2012-04-24 94 views
0

我試圖將變量值傳遞到:contains()參數,我不能多個參數工作。多個jQuery:包含()參數不工作

這裏就是我的意思是:

做多:包括()過濾器,您使用$("li:contains('arg1'):contains('arg2')").etc();

這意味着,只有li s的arg1arg2將這個搜索匹配。

好了,所以我想要做的是:

var styleQuery = $("td:contains("+ styleOption + "):contains("+ glassOption +")"); 

沒有運氣。

var styleQuery = $("td:contains("+ styleOption + ")"); 

完美地工作,但第二個變量搜索沒有。

關於發生了什麼的任何想法?

編輯

其實,我固定的一些類型,我現在得到這個返回通過控制檯選擇:

tr:contains(Sliding Patio Doors):contains(Double Glazed LoE 180) 

所以:包含()現在過濾器的工作,但我我仍然無法讓我的代碼工作。感謝您的幫助!仍然難倒,但這個特定的問題是休息。

+2

什麼是'styleOption'和'glassOption'?多個':contains()'在這個jsFiddle中工作正常:http://jsfiddle.net/Zz9uN/,所以你的變量必須有些東西。 – bhamlin 2012-04-24 23:52:13

+0

實際上,我修正了一些類型,現在通過控制檯得到了這個返回值: 'tr:contains(Sliding Patio Doors):contains(Double Glazed LoE 180)' 所以:contains()現在工作,但我仍然無法讓我的代碼工作。雖然謝謝! – ggwicz 2012-04-25 00:26:24

回答

1

嘗試添加單引號:

var styleQuery = $("td:contains('"+ styleOption + "'):contains('"+ glassOption +"')"); 
+0

上帝,jQuery只是讓一切變得醜陋,不是嗎? – FlavorScape 2012-04-24 23:51:49

+0

相比較醜...什麼? – 2012-04-24 23:54:22

+0

...和基本的JavaScript代碼來選擇基於字符串匹配項目是如此令人難以置信的優雅? ;) – bhamlin 2012-04-24 23:55:23