我有一块包含9块小板的板,每块小板包含9块电池(Ultimate TicTacToe)。 我正在尝试使用单击功能并在单击按钮上打印“x”,但它不会更改按钮的文本,我不知道为什么。 请帮我。 这是代码:
<script>
var bigTable = "<table align='center' value='bigBoard' border='0' cellpadding='1' cellspacing='1'\><tbody>";
for (var k = 0; k < 9; k++)
{
if (k % 3 === 0)
{
bigTable += "<tr>";
}
bigTable += "<td>";
var mytable = "<table value='smallBoard'+k border='1' cellpadding='1' cellspacing='1'><tbody><tr>";
for (var j = 0; j < 3; j++)
{
for (var i = 0; i < 3; i++)
{
var position = +k + "," + j + "," + i;
mytable += "<td><button class='a' id=" + position + " type='submit' name=" + position + "></button</td>";
}
mytable += "</tr><tr>";
}
mytable += "</tr></tbody></table>";
bigTable += mytable + "</td>";
if (k % 3 === 2)
{
bigTable += "</tr>";
}
}
bigTable += "</tbody></table>";
document.write(bigTable);
</script>
<script>
$(document).ready(function() {
$(".a").click(function() {
var buttonPressed = $(this).attr("id");
jQuery.ajax({
data:buttonPressed,
url:"board",
success: function(responseText){
//alert("acac" + buttonPressed);
$("#" + buttonPressed).text(responseText);
}
});
});
});
</script>
答案 0 :(得分:0)
将按钮的类型从提交更改为按钮,因为您正在调用Ajax请求,而不是提交表单。
答案 1 :(得分:0)
我跑了这个jsfiddle,它工作正常 试试吧
只需为您单击的按钮声明一个变量,然后通过引用
为其设置.text$(".a").click(function() {
var that = $(this);
....
that.text('X');
}
答案 2 :(得分:0)
这就是你做错了,改变这个:
var position = + k +“,”+ j +“,”+ i;
之类的,
var position = + k +“ - ”+ j +“ - ”+ i;