[英]Getting s.Type.ToUpperCase() is not a function when calling WCF service with $ajax
我正在使用WCF,但出现此错误。 如果我使用jQuery1.14.1我得到
类型错误:s.type.ToUpperCase不是函数
类型= s.type.ToUpperCase();
如果我在本地使用jQuery 1.12.1,则会正确调用该服务。 但是,如果我在服务器上尝试使用它,则1.14.1会收到上述错误,而1.12则会显示此错误:
类型错误:l.type.ToUpperCase()不是函数.. + && n.event.trigger(“ ajaxStart”),l.type = l.type.ToUpperCase(),l,hasContent =!Kb.tes.。 ..
相关代码:
var Type = "POST";
var DataType = "jsonp";
var ProcessData = true;
var ContentType = "application/json; charset=utf-8";
var params = {
user: $("#userid_hidden").val().toString(),
permission: $("#permission_id_" + i).val().toString(),
enabled: true,
note: $("#permission_note_" + i).val(),
write: $("#permission_write_" + i).is(":checked")
}
SetPermission(params);
function SetPermission(params) {
//alert('setting permission');
if (params.enabled)
CallService('wsEnablePermissionJSON', params);
else
CallService('wsDisablePermissionJSON', params);
}
function CallService(wsName, params) { //Generic function to call WCF Service
alert('calling service');
$.ajax({
type: Type, //GET or POST or PUT or DELETE verb
url: Url + wsName, // Location of the service
data: JSON.stringify(params),
/*data: JSON.stringify(params), //Data sent to server*/
contentType: ContentType, // content type sent to server
dataType: DataType, //Expected data format from server
processdata: ProcessData, //True or False
success: function(msg) { //On Successful service call
ServiceSucceeded(msg, wsName);
},
error: ServiceFailed // When Service call fails
});
alert('service called');
}
我看不到其余的错误,因为然后重新加载了页面,我通过截屏得到了这些信息。
我不知道该怎么做,我尝试了jQuery 2,但遇到了第一个错误。 我在另一个wcf服务中使用了相同的ajax调用,并且目前运行良好(唯一的区别是工作的人使用jQuery 1.12,并在本地解决了该问题,在服务器中新的失败了。)
两个页面都在同一服务器上。
我一直试图解决这一问题,但是我一无所获,起初我认为使用1.12可以解决问题。 我搜索了该错误,但所有结果都针对不同的情况,对于$ ajax调用,我什么都没有看到。
发生这种情况是因为变量Type的名称
var Type = "POST";
我之前从未想过要更改它,因为正如我之前说过的,我有另一个非常相似的Web应用程序,并且使用完全相同的Ajax调用也可以正常工作,而我从某个地方的示例中获得了该代码。
更改为
var Requestype = "POST";
照顾了错误
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.