ASP.NET页面使用AjaxPro2完成JS调用后台方法

 一、首先下载AjaxPro.2.dll(附下载地址)

百度网盘链接:https://pan.baidu.com/s/1r87DE1Tza9F4NbJwTCS1AQ
提取码:10p6 

二、在Visual studio中创建空Web项目,并引用AjaxPro.2.dll

三、打开Web.config文件,加入以下节点:

<configuration>

<system.web>

<httpHandlers>

      <add verb="*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2" validate="false"/>

</httpHandlers>

</system.web>

<system.webServer>

  <handlers>

    <add name="AjaxPro_AjaxHandlerFactory" preCondition="integratedMode" verb="*"

   path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2" />

  </handlers>

 </system.webServer>

</configuration>

四、使用步骤

  1. 新建一个名为Test的web页面,在顶部using AjaxPro;
  2. 在Page_Load中输入以下代码(写在Page.IsPostBack外面):

    Utility.RegisterTypeForAjax(typeof(Test));

  3. 在类名上增加[AjaxNamespace("TestAjax")],此处"TestAjax"用于在js中调用时使用,可自己定义名称;
  4. js需要调用的方法上增加[AjaxMethod]
  5. js中调用方式: var tes = TestAjax.TestA().value;

五、在项目中的使用实例

后台代码

 1 [AjaxNamespace("VehicleAjax")]
 2 public partial class WebUserControl_wUCtlVehicle : System.Web.UI.UserControl
 3 {
 4     protected void Page_Load(object sender, EventArgs e)
 5     {
 6         Utility.RegisterTypeForAjax(typeof(WebUserControl_wUCtlVehicle));
 7         if (!Page.IsPostBack)
 8         {
 9          }
10     }  
11 
12  [AjaxMethod]
13     public string GetVehicleID(string strVehicle)
14     {
15         if (strVehicle=="1")
16 return "1"; 17 else 18 return "0"; 19 } 20 }

 前端代码

 1 <%@ Control Language="C#" AutoEventWireup="true" CodeFile="wUCtlVehicle.ascx.cs" 
 2     Inherits="WebUserControl_wUCtlVehicle" %>
 3 <script type="text/javascript">
 4     function chkAddVehicleInfo() {
 5       var res = VehicleAjax.GetVehicleID(txtVehicleID.value.replace(/\s+/g, ''));
 6         if (res.value == "1") { alert("此编号已存在"); return false; }
 7     }
 8 </script>
 9 <table>
10     <tr>
11         <td>输入编号:</td>
12         <td>
13         <asp:TextBox ID="txtVehicleID" runat="server"></asp:TextBox>
14         </td>
15         <td>
16             <asp:Button ID="btnSave" runat="server" Text="保存"  OnClientClick="chkAddVehicleInfo();"/>
17         </td>
18     </tr>
19 </table>        

猜你喜欢

转载自www.cnblogs.com/xbingyou/p/12531119.html
今日推荐