$.post投掷”;非法调用”;
$.post throwing "Illegal invocation "
编辑:到目前为止,所有建议的答案都不起作用。
我正在和姜戈通话。第一次运行时,服务器返回"n_usr"(这会更改用户文件的格式)。第二次,它只是抛出一个Illegal invocation
错误。
function log_in () {
username = $('#usr_enter').val();
password = $('#pass_enter').val();
if(!n_usr){
$.post('/ajax/login',{password: password, username: username}, function(data) {
if(data == "n_usr"){
$('#new_user_entry').show('slow');
n_usr = true;
}
else {
}
})
}else {
password2 = $('#pass_re_enter');
penname = $('#pen_enter');
$.post('/ajax/login', {password: password, password2: password2, username: username, pen_name: penname, TN: "TN"}, function(data) {
if(data == "e_act"){
} else {
}
});
}
}
在else
中,您有:
password2 = $('#pass_re_enter');
penname = $('#pen_enter');
然后你有:
{password: password, password2: password2, username: username, pen_name: penname, TN: "TN"}
您得到Illegal invocation
是因为jQuery正试图序列化$.post
的jQuery对象,但它做不到。它可能试图调用一个字符串方法,并将一个jQuery对象作为上下文传递给它,从而导致错误。
您需要添加.val()
。
password2 = $('#pass_re_enter').val();
penname = $('#pen_enter').val();
好吧,你对它们的调用不同——第一次:
$.post(url_base+'/ajax/login' ...
和第二个
$.post('/ajax/login', {....
将第二个更改为包含url_base。
相关文章:
- AJAX调用中的非法调用
- 如何解决这种情况下的非法调用类型错误
- 为什么从数组调用时收到非法调用
- 使用ajax和bootbox进行非法调用
- 未捕获的类型错误:非法调用:模态形式的错误
- 对间谍对象的非法调用
- 非法调用错误 jquery
- $.post投掷”;非法调用”;
- 调用module.exports上的函数时发生CommonJS非法调用错误
- Chrome说我正在使用非法的函数调用
- 使用 Web 音频 API 使用 start/noteOn 进行非法调用
- 为什么这会引发未捕获的类型错误:非法调用
- jQuery ajax Uncatch TypeError: 非法调用
- 什么是非法调用类型JavaScript中的错误
- 在 jquery 中将错误作为非法调用
- 为什么某些函数调用在 JavaScript 中被称为“非法调用”
- JavaScript 中的 getUserMedia() 跨浏览器规范化.非法调用
- Array.prototype.forEach.call 给出 TypeError: 非法调用
- 未捕获的类型错误:发送数据时非法调用
- 未捕获的类型错误:从 ajax 发送数据时出现非法调用错误