我是网络编程的新手。我试图用JavaScript绘制一个表行,但它不起作用,我不知道为什么。
这是代码
<div id="gameDiv"> </div>
<script type="text/javascript">
public function drawGame(){
var table = document.createElement('table');
table.setAttribute('style','float:left');
var startRow = table.insertRow(0);
var c = 'A'
for (j=0; j<8; j++) {
var text = document.createTextNode(c++);
var cell = startRow.insertCell(j);
cell.appendChild(text);
}
document.getElementById("gameDiv").appendChild(table);
}
$(document).ready(function() {
drawGame();
};
</script>
答案 0 :(得分:5)
问题在于您使用public
。 Javascript没有public
或private
,因此将其置于函数声明前会导致错误。如果您打开控制台,则会看到如下错误:
SyntaxError: Unexpected token function
要解决此问题,只需从代码中删除private
修饰符即可。
此外,您似乎在代码末尾缺少右括号。相反,你应该使用它:
$(document).ready(function() {
drawGame();
});
但该代码也可以写得更短:
$(drawGame);
答案 1 :(得分:0)
嗯,您收到错误是因为我认为您的语言可能会混淆,因此无需在javascript中将某个功能声明为公开,它会给您一个错误。
drawGame函数可以是:
function drawGame(){
var table = document.createElement('table');
table.setAttribute('style','float:left');
var startRow = table.insertRow(0);
var c = 'A'
for(j=0; j<8; j++){
var text = document.createTextNode(c++);
var cell = startRow.insertCell(j);
cell.appendChild(text);
}
}
答案 2 :(得分:0)
以下是一种工作变体http://jsbin.com/hisewamu/4/edit,&#34; $&#34;概念是jquery的一部分,你应该包括
答案 3 :(得分:0)
这应该摆脱NaN(非数字)的废话。
<script>
function drawGame(){
var table = document.createElement('table');
table.setAttribute('style','float:left');
var startRow = table.insertRow(0);
var c = 'A'.charCodeAt()
for(j=0; j<8; j++){
var text = document.createTextNode(String.fromCharCode(c++));
var cell = startRow.insertCell(j);
cell.appendChild(text);
}
document.getElementById("gameDiv").appendChild(table);
}
$(document).ready(function() {
drawGame();
});
</script>