我正在使用jQuery的.get()函数,我使用它时遇到了一个非常奇怪的问题。
这是前端...
<body>
<button title="minor">Minor Armor</button>
<br /><br />
<button title="medium">Medium Armor</button>
<br /><br />
<button title="major">Major Armor</button>
<br /><br />
<center>
<div id="printout" style="border: 1px black dotted; height: 300px; width: 300px;">
</div>
</center>
</body>
这是我正在尝试使用的功能......
$("button").click(function () {
var v = "dnd_specific_armor_" + $(this).attr("title");
alert(v + " was pressed.");
$.get("randloot.php", { "table" : v }, function(data) {
if(data.roll != 0) {
alert(data.roll);
alert(data.armor);
alert(data.price);
$('#printout').text("Roll - " + data.roll
"\nArmor - " + data.armor
"\nPrice - " + data.price);
}
else
$('#printout').text("Oops");
}, "json");
});
按钮根本不会响应点击次数。警报窗口没有弹出,我的div框中什么都没有。根本没有回应。
有趣的是,如果我取出.get()部分并使用这个......
$("button").click(function () {
var v = "dnd_specific_armor_" + $(this).attr("title");
alert(v + " was pressed.");
});
然后它工作正常。
我正在尝试在Firefox 4中工作,我尝试拉起Java控制台(甚至没有显示)和错误控制台(没有报告任何错误)。所以我无法弄清楚到底出了什么问题。
有什么建议吗?
答案 0 :(得分:3)
您的代码包含语法错误。
$('#printout').text("Roll - " + data.roll
"\nArmor - " + data.armor
"\nPrice - " + data.price);
应该是
$('#printout').text("Roll - " + data.roll +
"\nArmor - " + data.armor +
"\nPrice - " + data.price);
顺便说一句,检查错误控制台也会显示这一点 - 在此之前询问通常是一件好事。 ;)