JavaScript在Firefox中运行,但不是IE或Chrome?

时间:2012-03-17 19:56:57

标签: javascript html forms javascript-events

我的网站中有以下JavaScript:

 $(function() {
    var $cells = $("td");

    $("#search").keyup(function() {
        var val = $.trim(this.value).toUpperCase();
        if (val === "")
            $cells.parent().show();
        else {
            $cells.parent().hide();
            $cells.filter(function() {
                return -1 != $(this).text().toUpperCase().indexOf(val);
            }).parent().show();
        }
    });
});​

Link to it in action.

此示例适用于所有浏览器,因此我认为问题出在我的HTML某处。以下是相关部分:

  <div id="searchContainer">
                <input id="search" type="text">
            </div>
                <table>
                <tr>
                    <th>Username</th>
                    <th>Full name</th> 
                    <th>Tick to select</th>
               </tr>
           @foreach (var user in result) {
            <tr><td>@user.Username</td> <td>@user.FirstName @user.SecondName</td>
                <td><input type="checkbox" name="userId" value="@user.UserId" /></td></tr>
                }

我想的错误必须在这里,因为代码在Firefox中完美运行但在Chrome或IE中根本不运行。

1 个答案:

答案 0 :(得分:1)

也许是因为您错过了输入搜索框中的结束/ ...

<input id="search" type="text">

应该是

<input id="search" type="text" />

如果没有,请尝试发布生成的源代码,以确保客户端实际上看到的是什么,而不是asp.net看到的内容(我假设你使用的是带有razor的Asp.net mvc?)。