我有一个通用的函数,从第一个字段填充第二个字段。在存在标签的情况下,它会产生问题,因为标签是
next()
元素
所以,我以:
function buildoptions(el){
var element = el.id;
var $flda = $('#'+element);
var $fldb = $flda.next().next(); //double here to skip the label
.....
}
但是当然,我有几个字段没有标签,所以这打破了...
我在想
var $fldb = $flda.next().not(label);
会起作用,但事实并非如此。它实际上抛出一个错误
Error: 'label' is undefined
想法?
HTML看起来像:
<label for="inp_29">Select drives next</label>
<select id="inp_29" name="driver1" onchange="buildoptions(this);">
<option value="" selected="selected">Select</option>
<option value="option1">option1</option>
<option value="option2">option2</option>
</select>
<!--* SOMETIMES OPTIONAL LABEL*-->
<label for="inp_30">No default options</label>
<!--* END SOMETIMES OPTIONAL LABEL*-->
<select id="inp_30" name="filler1">
<option value="Select Driver First">Select Driver First</option>
</select>
我也有一个表格案例:
<TR id="dynrow_table35_1" class="">
<TD class="odd">
<LABEL for="inp_331">absel</LABEL>
<SELECT id="inp_331" onchange="buildoptions(this);" name="absel_1">
<OPTION value="">Select</OPTION>
<OPTION value="option1">option1</OPTION>
<OPTION value="option2">option2</OPTION>
</SELECT></TD>
<TD class="odd"><LABEL for="inp_341">No default options</LABEL>
<SELECT id="inp_341" name="abfil1">
<OPTION value="Select Driver First">Select Driver First</OPTION>
</SELECT> </TD>
</TR>
ID是动态构建的,我永远不会知道它们的实际ID。
1条答案
按热度按时间vjhs03f71#
这个呢。