我有一个HTML表单,其中包含ID为“soln_c_links”的字段,这是一个选择字段,其中包含两个值“是”和“否”;
在此字段下方有4个表格行,其输入字段基于我想要显示/隐藏的上述选项。我遇到的问题是没有DIV带有围绕这些字段的ID,而且 tr 中没有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可以实现吗?
由于
贾斯汀
答案 0 :(得分: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();
});
答案 1 :(得分:0)
您可以尝试使用n-th child selector代替。隐藏第一行使用的示例:
$('table tr:nth-child(0)').hide();
答案 2 :(得分:0)
如果您没有任何ID或任何更简单的方法来找到您正在寻找的正确的INPUT元素,您始终可以根据其名称执行查找
$('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]')