我有一个JQuery函数,可以在Web服务方法上执行AJAX Post。此功能适用于FireFox,Chrome,Safari和IE 9及更低版本。由于某些奇怪的原因,IE10不传递执行Web方法所需的参数,并引发以下异常:
=============================================== ============================
ExceptionType = System.InvalidOperationException
消息=无效的Web服务调用,缺少参数值:'parameterX'。
StackTrace = at System.Web.Script.Services.WebServiceMethodData.CallMethod(Object target,IDictionary 2 parameters)
at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary
2个参数)
在System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context,WebServiceMethodData methodData,IDictionary`2 rawParams)
在System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context,WebServiceMethodData methodData)
=============================================== ============================
我试图在AJAX请求中使用各种传递数据的组合,包括JSON.stringify()方法。没有用,这似乎是IE10中的一个错误。
这是JQuery函数:
var valueX = $inputBox.val().replace("'", "!");
var valueY = 1;
myNameSpace.activeAjaxRequest = $.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: webServiceMethodUrl,
data: JSON.stringify({ parameterX: valueX, parameterY: valueY }),
dataType: "json",
success: function (result) {
// some code here
}
,
error: function (sender, textStatus, errorThrown) {
// some code here
}
});
非常感谢任何修复或解决方法!