function GetRequestVerificationToken() {
var token = $('input[name=""__RequestVerificationToken""]').val();
var headers = {};
headers['__RequestVerificationToken'] = token;
return headers;
}
我有上面的GetRequestVerificationToken()函数,我在使用jquery-1.7.2的asp.net MVC 3应用程序中的Ajax调用中使用过。
升级到jquery-3.2.1后,我收到以下错误:
未捕获错误:语法错误,无法识别的表达式:input [name =“”__ RequestVerificationToken“”] 在Function.Sizzle.error(jquery-3.2.1.js?v = 2017_1:1580) 在Sizzle.tokenize(jquery-3.2.1.js?v = 2017_1:2232) 在Sizzle.select(jquery-3.2.1.js?v = 2017_1:2659) 在Function.Sizzle [as find](jquery-3.2.1.js?v = 2017_1:884) 在jQuery.fn.init.find(jquery-3.2.1.js?v = 2017_1:2922) 在jQuery.fn.init(jquery-3.2.1.js?v = 2017_1:3032) 在jQuery(jquery-3.2.1.js?v = 2017_1:98) at GetRequestVerificationToken(Common.js?v = 2017_1:265) at setCalender(Report.js?v = 2017_1:81) 在HTMLDocument。 ((指数):967)
任何人都知道我需要做出哪些语法更改?
以下是我的示例用法脚本
$.ajax({
async: true,
cache: false,
data: { startDate: sdate, endDate: edate },
headers: GetRequestVerificationToken(),
type: 'POST',
url: '/' + virtualDirectory + '/Test/List',
success: function (data) {
$("#DivAction").html(data);
TableSorter('audit');
HideLoader();
},
error: function (msg) {
alert("err in Audit Trail Search");
HideLoader();
}
答案 0 :(得分:0)
更改此
$('input[name=""__RequestVerificationToken""]')
到此:
$('input[name="__RequestVerificationToken"]')
您需要的所有信息都会显示在错误消息中。
答案 1 :(得分:0)
重新解决问题的是重写我的GetRequestVerificationToken函数,如下所示。
function GetRequestVerificationToken() {
//var token = $('input[name=""__RequestVerificationToken""]').val();
var token = $('[name=__RequestVerificationToken]').val();
var headers = {};
headers['__RequestVerificationToken'] = token;
return headers;
}