Javascript 如何从Ajax获取数据
我有一个名为sid的变量,它处理座位数。我想将sid抛出到TryJSON.aspx方法测试。然后我想在方法测试中操作数据,然后将结果返回给这个ajax。但是当我试着扔希德的时候,我犯了一个错误 这是我要接收的C代码Javascript 如何从Ajax获取数据,javascript,c#,asp.net,ajax,json,Javascript,C#,Asp.net,Ajax,Json,我有一个名为sid的变量,它处理座位数。我想将sid抛出到TryJSON.aspx方法测试。然后我想在方法测试中操作数据,然后将结果返回给这个ajax。但是当我试着扔希德的时候,我犯了一个错误 这是我要接收的C代码 [WebMethod] [ScriptMethod(UseHttpGet = true)] public static string test(string noSeat) { // return noSeat; //JavaSc
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public static string test(string noSeat)
{
// return noSeat;
//JavaScriptSerializer serializer = new JavaScriptSerializer();
// return new JavaScriptSerializer().Serialize(new { noSeat = noSeat });
}
我尝试只返回noSeat,也使用Javascript序列化程序返回。但它有一个错误。上面说
试图使用POST请求调用方法“test”,这是不允许的
我已经受审了
回归成功
但它并没有出现在控制台上,仍然是相同的错误。
怎么了?更改类型:POST到类型:GET应该修复问题无效的web服务调用,缺少参数“noSeat”的值。当我想要得到它的时候,它又出现了一个错误。我检查控制台上的tab参数,它给出{noSeat:4-2}我的意思是指定UseHttpGet=true的不是null值@ManishParakhiyaScriptMethodAttribute。请尝试删除此参数,或将其设置为false。这就是阻止POST工作的原因。您能解释一下与OP的代码有什么区别吗?请编写如下响应函数:var arr=$.parseJSONresponse.d;
var sid = jQuery(this).attr('id');
console.log(sid);
$.ajax({
url: "TryJSON.aspx/test",
type: "POST",
data: JSON.stringify({ 'noSeat': sid }),
contentType: "application/json; charset=utf-8",
dataType:'json',
success: function (response) {
var arr = JSON.parse(response.d);
console.log(arr);
},
error: function () {
alert("sorry, there was a problem!");
console.log("error");
},
complete: function () {
console.log("completed");
}
});
var sid = jQuery(this).attr('id');
console.log(sid);
$.ajax({
url: "TryJSON.aspx/test",
type: "POST",
data: JSON.stringify({ 'noSeat': sid }),
contentType: "application/json; charset=utf-8",
dataType:'json',
success: function (response) {
var arr = JSON.parse(response.d);
console.log(arr);
},
error: function () {
alert("sorry, there was a problem!");
console.log("error");
},
complete: function () {
console.log("completed");
}
});