Javascript jQuery中的.html()不起作用

Javascript jQuery中的.html()不起作用,javascript,jquery,html,web-applications,frontend,Javascript,Jquery,Html,Web Applications,Frontend,我完全是一个前端开发的初学者,我正在尝试用HTML5创建一个简单的井字游戏。我使用了一个表来创建板。下面是HTML代码- <section id="board"> <table> <tr> <td class="noTop noLeft">-</td> <td class="noTop">-</td> <td c

我完全是一个前端开发的初学者,我正在尝试用HTML5创建一个简单的井字游戏。我使用了一个表来创建板。下面是HTML代码-

<section id="board">
    <table>
        <tr>
            <td class="noTop noLeft">-</td>
            <td class="noTop">-</td>
            <td class="noTop noRight">-</td>
        </tr>
        <tr>
            <td class="noLeft">-</td>
            <td>-</td>
            <td class="noRight">-</td>
        </tr>
        <tr>
            <td class="noBottom noLeft">-</td>
            <td class="noBottom">-</td>
            <td class="noBottom noRight">-</td>
        </tr>
    </table>
</section>
但代码似乎根本不起作用,而且即使我点击任何方块,也不会有“X”出现。如何修复它?

请确保:

或者,如果HTML是动态生成的,请使用以下方法:


只有在单击表的顶行时,那里的JavaScript才会工作

$("#board td").click(function()  {
    $(this).html("X");
});
试试这个

$("#board td").click(function()  {
    $(this).html("X");
});

如果希望此函数仅适用于第一行,请参阅,然后使用此代码

$('document').ready(function (){
    $("td.noTop").click(function()  {
        $(this).html("X");
    });
});`
如果您想要所有行和框,可以使用此代码

$('document').ready(function (){
    $("#board td").click(function()  {
        $(this).html("X");
    });
});`

你能展示一个演示或小提琴吗?这些元素是否是动态创建的将代码包装在$(document).ready(function(){})中;如果脚本在head tag]中,您知道
控制台吗?你有没有发现另一个错误?您的Javascript是否正在运行?
$("#board td").click(function()  {
    $(this).html("X");
});
$('document').ready(function (){
    $("td.noTop").click(function()  {
        $(this).html("X");
    });
});`
$('document').ready(function (){
    $("#board td").click(function()  {
        $(this).html("X");
    });
});`