【发布时间】:2012-04-03 02:08:36
【问题描述】:
这是一个示例代码,
<select id="select1">
<option value="1">Option 1 </option>
<option value="2">Option 2 </option>
<option value="3">Option 3 </option>
<option value="4">Option 4 </option>
</select>
<input type="text" id="input1"/>
<select id="select2">
<option value="1">Option 1 </option>
<option value="2">Option 2 </option>
<option value="3">Option 3 </option>
<option value="4">Option 4 </option>
</select>
<input type="text" id="input2"/>
我的问题是,假设我使用 jQuery 抓取一个输入字段,即 $("#input1"),我如何在不进行硬编码的情况下抓取前一个表单元素?在这种情况下它是 $("#select1"),我不想使用 prev()、parent()、children() 等手动遍历 DOM,因为我的表单结构将来可能会改变(比如添加字段集、td、tr 等)
谢谢你帮助我!
【问题讨论】:
-
我不明白你的问题。你想获取之前的表单元素,但又不想使用 prev(),因为事情会改变???如果是这样,您认为“前一个表单元素”是什么?
-
@Steve,表单元素可能被
fieldsets 或类似的分隔。