asp.net .aspx的站点 用 jquery Ajax Post请求如何发送到后台aspx.cs的方法里面去啊
js 的代码如下
$.ajax({
type: "Post",
url: "Default.aspx/InsertData",
data: "{'sid':'" + sid + "'}",
datatype: "json",
contentType: "application/json; charset=utf-8",
success: function (count) {
alert(count);
}
});
aspx.cs 代码如下
[WebMethod]
public static string InsertData(int sid)
{
return "2";
}
为什么就是进不来求大神指教
首先确认 url: "Default.aspx/InsertData" 这个路径对不对,期次 data: "{'sid':'" + sid + "'}"由于程序中sid是int型,可不用单引号包括,最后调用的时候可以F12看看执行过程,是否有报错什么的。
这个问题我试过了 改过的 调试着看 他只能进到 页面加载方法里面取 并且参数不知怎么接到
后台应该用Ashx来接受,把这个方法公开就行,不需要静态的.
直接请求后台方法也是可以的。
@ArthurNL: 我知道可以,但是不推荐这么干啊
一边处理程序 确实可以接到 请求 但是毕竟麻烦又要判断 还不能指定方法 我之所一想发送到aspx里面是为了方便能够直接为控件赋值 然而好想不可以这样做
@happydaily: 要是想要指定方法还要还要传送一个状态判断
url: "Default.aspx/InsertData" 这个地址不对 用Ashx
如果是 MVC就好了 然后他不是
@啰嗦: 并不需要到aspx.cs后台文件处理
在项目里你起一个 ajax/InsertData.ashx.cs的文件 C#逻辑写在这里
然后aspx前端脚本的的URL这个参数指向这个地址: url: ajax/InsertData.ashx
页面触发后就会执行这个ashx 最后根据你的返回内容 更新你的页面。
比如context.Response.Write(count); 就会返回count数 alert弹出
用一般处理程序
data参数可能写的不对 data: "{sid: 5 }",你先随便传一个数过去试试。
url: "Default.aspx/InsertData", 这里的请求不对吧