ajax 调用后台方法大家可以讨论下
(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )
我曾使用过的方法有三种:
1 在页面中加入隐藏的button,并定义了事件,然后执行js的$("#隐藏btnID").click()来 执行后台方法
2 用ajaxPro来执行
3 用ajax的url:页面地址/(静态)方法名称 来执行
在这种方法中,方法必须要求是静态的,所以例如在_default这个页面中 ,示例如下
复制代码 代码如下:
public partial class _Default : System.Web.UI.Page
{
static int sVar = 1;
int abc = 3;
int result;
[WebMethod]
public static string AjaxGetMethod()
{
sVar = 2; //静态变量可以直接调用
_Default d = new _Default(); //如果不实例化 就不能使用result,abc
NoStaticFun nsf = new NoStaticFun(); //如果不实例化 就不能使用test
d.result = nsf.test();
d.result = d.abc;
return d.result;
}
}
public class NoStaticFun
{
public int test()
{
return 2;
}
}
在这个示例中,我进行了标注,我想和大家讨论下有什么其他更好的方法,或者这几个方法,你们是怎样应用的
1 在页面中加入隐藏的button,并定义了事件,然后执行js的$("#隐藏btnID").click()来 执行后台方法
2 用ajaxPro来执行
3 用ajax的url:页面地址/(静态)方法名称 来执行
在这种方法中,方法必须要求是静态的,所以例如在_default这个页面中 ,示例如下
复制代码 代码如下:
public partial class _Default : System.Web.UI.Page
{
static int sVar = 1;
int abc = 3;
int result;
[WebMethod]
public static string AjaxGetMethod()
{
sVar = 2; //静态变量可以直接调用
_Default d = new _Default(); //如果不实例化 就不能使用result,abc
NoStaticFun nsf = new NoStaticFun(); //如果不实例化 就不能使用test
d.result = nsf.test();
d.result = d.abc;
return d.result;
}
}
public class NoStaticFun
{
public int test()
{
return 2;
}
}
在这个示例中,我进行了标注,我想和大家讨论下有什么其他更好的方法,或者这几个方法,你们是怎样应用的
下一篇:一款经典的ajax登录页面 后台asp.net