2011-12-12 77 views
0

我有一個HTML表單,其ID爲'soln_c_links',這是一個包含'Yes'和'No'兩個值的選擇字段;基於下拉值的JQuery顯示字段集

在此字段下方是4個表格行,輸入字段基於以上選擇我想要顯示/隱藏。我遇到的問題是沒有帶有圍繞這些字段的ID的DIV,此外,沒有可用於識別的ID,並且由於這是預編譯的軟件,所以我無法對其進行更改。

的領域確實有TR內的兩個元素。(例)

<tr> 
<td> 
<SPAN id=_Captsoln_c_title_a class=VIEWBOXCAPTION>Link Title:</SPAN><BR> 
<SPAN id=_Datasoln_c_title_a class=VIEWBOX> 
<INPUT id=soln_c_title_a class=EDIT maxLength=20 size=50 name=soln_c_title_a> 
<INPUT type=hidden name=_HIDDENsoln_c_title_a></SPAN> 
</td> 
</tr> 

所有四行的根本遵循相同的命名慣例,即soln_c_title_a和soln_c_link_a從「a」到這些去'd'

這可以實現使用JQuery嗎?

感謝

賈斯汀

回答

1

如果要選擇表結束行,您可以選擇其子,然後冒泡到父級。

例子:

$(".VIEWBOX").each(function() { //this selects the VIEWbox class elements 

    var row = $(this).parent().parent(); //The DOM is TR > TD > ".VIEWBOX"-item 

    if(selector here) 
     row.hide(); 
}); 
0

你可以嘗試使用n-th child selector代替。示例隱藏第一行使用:

$('table tr:nth-child(0)').hide(); 

當然,您需要一種方法來識別表。根據你的JavaScript,這可能使用closest()next()

0

如果你沒有任何標識或找出你正在尋找適合你的正確的輸入元素始終可以進行基於它的查找任何更簡單的方法是,還可以生成名爲name

$('input[name=_HIDDENsoln_c_title_a]') 

通過你的代碼,所以如果你需要改變你的下拉值的名稱相匹配的字段值,你可以這樣做,也是

var altName = ... // some text variations on the name 
$('input[name=' + altName + ']) 

您也可以搭配指定的文本

開頭的名稱
$('input[name$=someStartText]') 

與指定的文本

$('input[name^=someEndText]') 

包含指定文本

$('input[name*=someText]') 

,甚至包含特定單詞(由空格分隔)

$('input[name~=someWord]') 
+0

爲這個優秀的感謝,所以我只想設置可視功能,這些因爲他們被發現? –

相關問題