2013-04-15 96 views
0

我沒有寫下面的代碼,但ive添加了一個if,檢查一個名爲starts的值,如果開始設置爲1,我只想返回以該值開頭的結果,我試過搜索RegEx exp並將'i'替換爲'a'或'\ A',但都不起作用,那麼我需要在哪裏開始一個字符?JQuery正則表達式開始於

感謝

function searchTable(inputVal, tablename,starts) { 
    var table = $(tablename); 
    table.find('tr:not(.header)').each(function (index, row) { 
     var allCells = $(row).find('td'); 
     if (allCells.length > 0) { 
      var found = false; 
      allCells.each(function (index, td) { 
       if (starts = 1) { 
        var regExp = new RegExp(inputVal, 'i'); 
       } else { 
        var regExp = new RegExp(inputVal, 'i'); 
       } 

       if (regExp.test($(td).text())) { 
        found = true; 
        return false; 
       } 
      }); 
      if (found == true) $(row).show().removeClass('exclude'); else $(row).hide().addClass('exclude'); 
     } 
    }); 
} 
+0

比較完成或者通過'=='或''===而不是一個'='。 –

+0

@limelights'starts'是一個參數。 – Loamhoof

+0

@Loamhoof是的,我看到,就像我發表評論。我有點快要跳槍了! :( –

回答

2

您需要使用插入符號^在你的正則表達式的開始(它匹配的位置「這樣的字符串或行的開始」)。但這不是一個修飾符。 i pour替代表示「不區分大小寫」。

所以......

var regExp = new RegExp((starts ? '^' : '') + inputVal, 'i');