2011-03-02 22 views
1

什麼是循環搜索特定值而不是使用each()的所有文本框的最有效方式?jQuery在多個文本框中搜索val()

+3

那就像在說什麼沒有把一條腿在其他 – benhowdle89 2011-03-02 14:54:59

+2

前爲什麼不使用每個行走的最好方式?任何特定的原因? – soju 2011-03-02 14:55:27

+0

是的,有趣的替代品和性能 – 2011-03-02 14:56:56

回答

6

隨時瞭解您selectors

$('input:text[value="search text"]'); // exact 

$('input:text[value*="search text"]'); // contains 
+2

+1爲了避免使用'.each',儘管我無法想象這會更快,因爲它將在內部以相同的方式實現。 – meagar 2011-03-02 15:02:39

+0

+1簡潔易讀。 – 2011-03-02 15:10:41

+0

@meagar:的確,內部實現將大致相同,可能通話深度較小。 – Orbling 2011-03-02 15:16:42

4

可能沒什麼錯誤使用.each,因爲你將不得不不管執行一個循環,但是你可以使用filter(),這可能是短多一點表現:

$("input").filter(function() { return this.value === "value"; }); 
1

你可以使用地圖來代替,特別是如果你打算存儲在數組中每個文本框的結果地圖將會在默認情況下(返回從映射方法值都存儲)

var resultArray = $.map(selection, function(item) { return xxxx; });