XMLHttpRequest.send() 上的 AJAX 语法错误
AJAX Syntax Error on XMLHttpRequest.send()
我正在学习一个AJAX教程。 我几乎没有网络经验,所以当出现问题时我有点惊讶,我没有回溯,没有日志,什么都没有。
我拔出了Firebug,它说我的两个send()
调用都有语法错误。
代码的相关(我认为)部分:
function getChatText() {
if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
receiveReq.open("GET", 'getChat.php?chat=1&last=' + lastMessage, true);
receiveReq.onreadystatechange = handleReceiveChat;
receiveReq.send(null); // <--- Firebug says an error is here
}
}
function sendChatText() {
if (sendReq.readyState == 4 || sendReq.readyState == 0) {
sendReq.open("POST", 'getChat.php?chat=1&last=' + lastMessage, true);
sendReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
sendReq.onreadystatechange = handleSendChat;
var param = 'message=' + document.getElementById('txt_message').value;
param += '&name=John Doe';
param += '&chat=1';
sendReq.send(param); // <--- and also here
}
}
我什至从工作教程中复制/粘贴了这些函数,但我仍然收到相同的错误。 我做错了什么?
确切的错误文本是:
Syntax Error:
getChatText() (line 38)
handleSendChat() (line 56)
receiveReq.send(null); (line 38)
错误发生在getChatText
内部(位于错误消息中调用堆栈的顶部)。
您可能使用无效语法调用
eval
;您可能忘记将 JSON 包装在括号中。
您应该使用 Firebug 的调试器来跟踪错误。
编辑:尝试在lastMessage
上拨打encodeURIComponent
;这可能会有所帮助。 (无论如何你都应该这样做以防止URL注入)
相关文章:
- 使用 AJAX 向 Flask 发送 JSON 语法错误
- jQuery AJAX Post方法错误(语法错误)
- AJAX语法错误:JSON.parse:意外字符
- JQuery AJAX 轮询语法
- Ajax响应成功,但无法使用数据(未捕获语法错误:意外标识符)
- ajax中的语法错误
- Ajax 帖子未捕获语法错误:意外令牌非法
- Ajax语法错误
- 使用jquery ajax请求时出现语法错误
- 将数据从Ajax传递到PHP,出现语法错误
- ajax 调用 PHP 数据返回 VM92:1 未捕获语法错误:意外的标记 {.
- jQuery “$.ajax” 代码不起作用,语法错误
- 使用 AJAX 接收“未捕获的语法错误:意外令牌 (”
- Ajax 调用返回语法错误:输入意外结束
- 如何将简单的 JQuery 自动完成语法与对远程数据源(PHP 脚本)的 ajax 调用相结合
- 未捕获的语法错误: 意外令牌: ajax 调用
- Javascript ajax 语法来创建 html 行
- jQuery Ajax语法意外标记
- 原型到jQuery转换的AJAX语法
- XMLHttpRequest.send() 上的 AJAX 语法错误