我有一个在javascript中调用函数的按钮。 javascript依次运行两个连续的ajax调用。在第一个完成后,它会做一些额外的工作,然后运行第二个ajax调用。
按钮首次单击时可以使用。但是,当我想再次点击它时会弹出以下错误...
Uncaught TypeError: object is not a function
参考我的函数,从按钮调用'onclick'。
我对ajax很新,但我确信这不应该发生。其他按钮工作正常,它们都从同一个脚本调用函数。它似乎只是这一功能。我本以为会有一个分号丢失或者什么东西,但是第一次就没有用了......而且,我知道函数已经完成执行,因为我调试了函数并且它到达底部...
如果你感兴趣,这是我的ajax电话......
var $response = $.ajax({
url: $abs_filename,
type: 'HEAD',
async: false,
success: function () {
console.log('done');
}
}).status;
($response != "200") ? $exist = false : $exist = true;
....这里有很多额外的代码 ....
var response = $.ajax({
type: 'POST',
url: '/SERT/includes/file_operations.php',//url of receiver file on server
data: {saves: $save_data}, //your data
dataType: 'text', //text...
success: function(res) {
alert(res);
},
async: false
}).status;
编辑: 我的功能由
调用<input type="button" .... onclick="save_session()">
答案 0 :(得分:0)
您实际上没有显示导致错误的代码。
...然而
不要这样做;它没有按照你的想法做到。
($response != "200") ? $exist = false : $exist = true;
这样做:
$exist = $response == "200";
只是不要使用同步XHR。
答案 1 :(得分:0)
我能够弄明白......
所以我在save_session()函数内部进行了jQuery追加操作。这样的操作就是这样......
$bottom_section.append('<input type="hidden" name="save_session" value="' + $total + ' ' + $paragraph + '">');
当我把它拿出来然后整个事情按预期工作。我的猜测是通过在内存中命名输入“save_session”与save_session()的函数定义混淆。现在没有定义冲突,那就没关系了。