Prepare

Until then, be sure to understand the use of control in the JQueryElement.

Syntax

By adding a parameter, we can increase parameters for AJAX calling:

<je:Parameter
 Name="<parameter mame>" Type="<way to get parameter value>"
 Value="<parameter expression>" Default="<default value>"
 DataType="<data type>" Provider="<custom conversion methods>" />

<je:Parameter Name="name" Type="Selector"
 Value="'#txtAName'" DataType="String" />

Each parameter needs to be included in ParameterList, and ParameterList is the property of all the class Async, in the click event below, we add a parameter named name.

<ClickAsync Url="webservice.asmx" MethodName="Save" Success="
function(data){
 alert(data.d.message);
}
">
 <ParameterList>
  <je:Parameter Name="name" Type="Selector" Value="'#txtWName3'" />
 </ParameterList>
</ClickAsync>

Parameter Name

If you use a WebService, the Name property of Parameter class and the parameter name of the method on the server side must be consistent, such as:

<je:Button ID="cmdWNet3" runat="server">
 <ClickAsync Url="webservice.asmx" MethodName="Save">
  <ParameterList>
   <je:Parameter Name="name" Type="Selector" Value="'#txtWName3'" />
  </ParameterList>
 </ClickAsync>
</je:Button>

In the code, we set the Name property of the parameter to name, so the method Save needs a parameter named name:

[WebMethod]
[ScriptMethod]
public SortedDictionary<string, object> Save ( string name )
{ }

If you use ashx to receive parameters, just use Request['name'].

Way To Get Parameter Value

There are two ways to get parameter value, one is the Selector, which means that the Value property is a selector, use the selector to select an element on the page, usually the input element, take the value of this element as the value of the parameter, then there's the Expression, that Value is a JavaScript expression, take the value of JavaScript expression as the value of the parameter:

<je:Parameter Name="name" Type="Selector"
 Value="'#txtWName3'" />

<je:Parameter Name="value" Type="Expression"
 Value="123 + 321" DataType="Number" />
<je:Parameter Name="value" Type="Expression"
 Value="add(123, 321)" DataType="Number" />  

Selector #txtWName3 uses single quotation marks in the code, because the selector is a string, if you change it to Value="myselector", it means that take the value of JavaScript variable myselector as the selector.

Value property as a JavaScript expression, the form is varied, in code, we also call a JavaScript method Add.

Default Value

Uisng the default property, you can set a default value when the parameter value is empty, is a JavaScript expression.

Data Type

Through DataType to convert the type of parameter, such as convert strings in the text box to numeric type:

<je:Parameter Name="name" Type="Selector" Value="'#txtAge'" DataType="number" />

The property DataType can be set to Number, Boolean, String, Date, in fact, the WebService itself will also do some transformation on the server side, and detail can refer to Ajax And Server Data Type Conversions.

Custom Conversion Methods

If the DataType is set, you can set Provider that provides custom conversion method, the method will be called when normal conversions fail, such as:

<je:Parameter Name="name" Type="Selector"
 Value="'#txtAge'" DataType="number" Provider="
 function(value){
  if(value == 'without doubt')
   return 40;
  else
   return 18;
 }
 " />
  

In the code above, if the user enters is without doubt, the age will translate to 40, otherwise 18.

Automatic Parameter

Some events of the control will automatically add some parameters, such as the Repeater's FillAsync will add pageindex, pagesize to represent the page number and other information.

推荐.NET配套的通用数据层ORM框架:CYQ.Data 通用数据层框架
新浪微博粉丝精灵,刷粉丝、刷评论、刷转发、企业商家微博营销必备工具"