我有一个非常复杂的 dom 树,有各种异常等。所以我不想使用
我想执行类似“对于每条错误消息,我想向先前的输入添加一个类”的功能。
现在我正在用树遍历来做,但出于各种原因,这不是一个好的解决方案。有没有什么好的方法可以直接针对正确的输入值?我可以完全控制 html,因此我可以根据需要向它们添加类等!
实际的 HTML:
<label for="from">Från</label>
<input value="as" title="Ort, gata eller kommun" name="from" id="from" class="field from input_error" type="text">
<div class="spacer">
<div class="error visible">
<p>Vilken adress menar du? Välj i listan!</p>
<ul>
<li>
<a href="addtrip?from=American%20Samoa&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">American Samoa</a>
</li>
<li>
<a href="addtrip?from=Assam,%20India&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">Assam, India</a>
</li>
<li>
<a href="addtrip?from=Elias,%20El%20Gaiara,%20Azbakia,%20Cairo,%20Egypt&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">Elias, El Gaiara, Azbakia, Cairo, Egypt</a>
</li>
<li>
<a href="addtrip?from=Amberg,%2092224,%20Germany&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">Amberg, 92224, Germany</a>
</li>
<li>
<a href="addtrip?from=As%20-%20Bras%C3%ADlia,%20Brasilia%20-%20Distrito%20Federal,%20Brazil&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">As - BrasÃlia, Brasilia - Distrito Federal, Brazil</a>
</li>
<li>
<a href="addtrip?from=As,%205753%20Deurne,%20The%20Netherlands&to=&when=&got_car=1&name=&email=&phone=&details=&posted" class="adress">As, 5753 Deurne, The Netherlands</a>
</li>
</ul>
</div>
</div>
<label for="to">Till</label>
<input value="" title="Ort, gata eller kommun" name="to" id="to" class="field to help input_error" type="text">
<div class="spacer">
<div class="error">
<p>Var ska du?</p>
</div>
</div>
<label for="when">När</label>
<div class="jdpicker_w">
<input value="" title="YYYY-MM-DD" name="when" id="when" class="field when input_error" type="text">
<div class="date_selector">
<div class="nav">
<div class="error_msg"></div>
<p class="month_nav">
<span class="button prev" title="[Page-Up]">«</span>
<span class="month_name">November</span>
<span class="button next" title="[Page-Down]">»</span>
</p>
<p class="year_nav">
<span class="button prev" title="[Ctrl+Page-Up]">«</span>
<span class="year_name" id="year_name">2010</span>
<span class="button next" title="[Ctrl+Page-Down]">»</span>
</p>
</div>
</div>
</div>
<div class="spacer">
<div class="error">
<p>När vill du åka?</p>
</div>
最佳答案
您可以将所需的类添加到每个错误消息的先前输入中,如下所示:
$('.error').each(function(index){
$(this).closest('div.spacer').prev('input').addClass('desired-class-'+index);
});
在前面的场景中,你的每个输入字段都会有一个唯一的类名,
如果您希望它们都具有相同的类名,只需删除 +index
关于javascript - 将一个 jquery 函数应用于多个选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4096158/