问题描述:
我在aspx 中使用了 aspx.cs的服务端控件绑定数据,用的是DataBind()和 ruant=“server”,将数据绑定到了aspx中
然后在项目中不得不使用ashx来处理数据,当我处理完成后想调用aspx.cs中的DataBind 方法,完成页面的刷新,发现怎么也完成不了
网上找了很多方法,比如ajax 直接调用 aspx.cs 中的方法发现不管用
后来我又在aspx上写了个可以直接调用 方法的按钮,点击可以完成刷新,于是我准备用js调用它,实现点击后的刷新,发现也没效果
写了个a标签,想让他直接跳转,这个方法倒是可以进入aspx.cs中,却被IsPostBack拦了下来
我现在已经无计可施了,有没有弄过这类方法的,求个思路
将 aspx.cs 中的那个方法加上 [WebMehtod]
标记,参考 C#中[WebMethod]的用法,aspx、ashx、asmx
这个方法我尝试过
[WebMethod]
public static string AshxBindData(string data)
{
BindData( "4");
return "OK";
}
我调用的这个方法,让这个方法调同一个aspx.cs中的方法,编译器报错,说非静态类要声明,于是我把代码改成
[WebMethod]
public static string AshxBindData(string data)
{
ChallengeGameRoomList challengeGameRoomList = new ChallengeGameRoomList();
challengeGameRoomList.BindData( "4");
return "OK";
}
但是依旧没有进BindData(string)这个方法,是因为不能这么调用吗~
@我去帮你买西瓜: 建议换一种方法,参考 https://www.cnblogs.com/yellowcool/p/7497231.html
@dudu: 这个方法解决了我描述的问题,但是又有新问题出现了,我全部的绑定方法都走完了,但是页面没有刷新,连ShowInfo都没有跳出来,请问这是为什么?可以肯定的是绑定数据的方法肯定没有问题
有页面参数标记。比如click你调用一次,把请求记下来,自己ajax补齐参数就可以跨过去了。
楼上的方法解决了我描述的问题,但是又有新问题出现了,我全部的绑定方法都走完了,但是页面没有刷新,连ShowInfo都没有跳出来,请问这是为什么?可以肯定的是绑定数据的方法肯定没有问题