2012-03-17 71 views
2

我在我的網站下面的JavaScript:JavaScript在Firefox中運行,但不是IE或Chrome?

$(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瀏覽器運行在所有必須是這裏的錯誤。

+2

這是什麼部分不起作用?在框中鍵入可在Chrome 17中過濾列表。 – 2012-03-17 19:58:29

+0

在Chrome中使用相同的JavaScript函數不能使用我的HTML進行過濾。 – 2012-03-17 20:12:13

+0

查看Chrome開發者工具窗口。控制檯中是否有錯誤? – Nik 2012-03-17 20:16:53

回答

1

也許是因爲你缺少閉合/在你輸入搜索框......

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

應該

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

如果沒有,嘗試發佈生成的源,以保證什麼客戶端實際上並不是asp.net所看到的(我假設你正在使用Asp.net mvc和razor?)。

相關問題