$("#save-responser-edit").click(function() {
var u = $("#u").val();
var that = this;
var uin = $("#uin-in-modal").val(u);
var responser1 = $("#responser1").val();
var responser2 = $("#responser2").val();
if (!uin) {
return ;
}
loading();
$.ajax({
url: '/topcustomer/updateResponser',
data: {
uin: uin,
type: 'responser',
responser1: responser1,
responser2: responser2
},
dataType: 'json',
method: 'POST'
}).done(function(result){
if (result.code) {
return alert(result.message || '发生错误(' + result.code + '), 请稍后再试!');
}
$("#responerModal").hide();
}).error(function() {
}).always(function(){
loading(false);
});
});
如上ajax运行报错
Uncaught TypeError: Illegal invocation
原因在于uin参数传递的不是一个值,而是返回的jq对象
这里从别处拷贝的代码,刚开始没注意,将
var uin = $("#uin-in-modal").val(u);
改成
var uin = $("#uin-in-modal").val();

本文介绍了一个关于Ajax请求中因参数传递不当导致的TypeError错误,并详细解释了如何通过正确获取表单值来解决该问题。

799

被折叠的 条评论
为什么被折叠?



