为什么这个javascript触发器不起作用?

时间:2017-04-27 20:48:15

标签: javascript jquery

我试图在点击表格行时显示abox:

的js

Mapper.Initialize(c => c.AddProfile<MappingProfile>());

HTML

$("#rowID").click(function(){
    var User = document.getElementById("userID");
    var Box = document.getElementById("userBox");

    document.Box.style.display = "block";
});

1 个答案:

答案 0 :(得分:0)

您不需要在document.之前添加Box。你基本上是在说document.document.getElementById('userBox')

此外,您可能还要编写所有JQuery,因为您正在使用它来将EventListener分配给#rowId

此外,由于会有多行,您可能希望将#rowID放入类中,例如.row因为ID应该是唯一可识别的元素。

$(".row").click(function(){
    var user = $("#userID");
    var box = $("#userBox");

    box.show();
});
#userBox {
    background-color: red;
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
    <tbody>
        <tr class="row" href="#">
            <td id="userID">Hello</td>
            <td>World!</td>
        </tr>
        <tr class="row" href="#">
            <td id="userID">Foo</td>
            <td>Bar</td>
        </tr>
    </tbody>
</table>

<div id="userBox">I'm a box!</div>