【发布时间】:2012-01-11 00:27:15
【问题描述】:
以下是包含对负责发出 AJAX 调用的 JavaScript 函数的调用的 HTML。我知道锚标签不应该具有 value 属性,但我将它与 jQuery 的 .attr("value") 方法一起使用。
<a href="javascript:;" onclick="ajaxTest();" title="Execute AJAX" value="executeAJAX">Execute AJAX</a>
以下是 JavaScript 函数。如果它有任何意义,它本身就包含在一个 .js 文件中。
function ajaxTest() {
$.ajax({
type: "POST",
url: "doAJAX",
data: {"selectedScope": "5",
"selectedView": "6"},
dataType: "text",
success: function(responseData) {
$("#replaceThis").append(responseData);
}
});
}
每次单击链接时,Firefox 的 Web 控制台中都会出现“语法错误”消息。然而,JavaScript 似乎按预期工作。
我只是想了解我收到错误的原因。
我应该补充一点,我使用的是 jQuery 1.7.1。
我进行了搜索,发现唯一的解决方法是“数据”选项的键应该用双引号括起来,所以我已经实现了,但我仍然得到语法。
谢谢。
编辑:
查看 Firebug 控制台,上面的代码不会触发 像在 Firefox 的控制台中一样的错误,但是,我看到了以下内容 在 POST 请求的 XML 部分:
XML 解析错误:语法错误位置: moz-nullprincipal:{1d13df07-25fb-4058-9f82-ce1bef3c8949} 行号 1、第1栏:
alskdfjlaksjdfjasdfl
^“alskdfjlaksjdfjasdfl”只是我设置的 servlet 在我测试这些东西时返回的内容。
这有点奇怪,因为 jQuery 似乎在尝试解析 尽管我已经明确声明它是文本,但作为 XML 的响应。
【问题讨论】:
-
您似乎没有关闭数据对象。 data: {"selectedScope": "5", "selectedView": "6",
-
遇到同样的问题,firefox ajax 尝试解析文本数据。
标签: javascript jquery html ajax