我正在尝试使用$ .post方法调用Web服务,我已经使用$ .ajax方法使它工作了:
$.ajax({ type: "POST", url: "StandardBag.aspx/RemoveProductFromStandardBag", data: "{'standardBagProductId': '" + standardBagProductId.trim() + "' }", success: function(){ $((".reload")).click(); }, dataType: "json", contentType: "application/json" });
但是,当我将相同的方法移到$ .post方法中时,它将无法工作:
$.post("StandardBag.aspx/RemoveProductFromStandardBag", "{'standardBagProductId': '" + standardBagProductId.trim() + "' }", function () { $((".reload")).click(); }, "json" );
我想念什么?
它不起作用,因为在您的$.post方法中,您无法将请求的内容类型设置为application/json。因此,不可能使用调用ASP.NET PageMethod,$.post因为ASP.NET PageMethod需要JSON请求。您将不得不使用$.ajax。
$.post
application/json
$.ajax
我将只修改data,以确保它已正确进行JSON编码:
data
$.ajax({ type: "POST", url: "StandardBag.aspx/RemoveProductFromStandardBag", data: JSON.stringify({ standardBagProductId: standardBagProductId.trim() }), success: function() { $(".reload").click(); }, dataType: "json", contentType: "application/json" });