私はかなり長い間これに取り組んできましたが、困惑しています。誰かが私のために何らかの方向性を持っていることを願っています。最初のコード:
jQuery:
$("#paperwork").bind("onFail", function(e, errors) {
if (e.originalEvent.type == 'submit') {
$.each(errors, function() {
var input = this.input;
input.parent().css({color: 'red'}).change(function() {
input.parent().css({color: '#444'});
});
});
}
});
そして、HTML のサンプル:
<input id="group_1" required="required" type="radio" name="attending" value="Yes" />Yes
<input id="group_1" type="radio" name="attending" value="No" />No
<input id="group_1" type="radio" name="attending" value="Not Provided" />Not Provided
<input id="group_1" class="single_text_input" type="text" name="primary_referral" />
<input id="group_1" class="single_text_input" type="text" name="secondary_referral" />
<span class="group_1">Referrals</span>
上記のように見えるいくつかのセクションがあります。それぞれに対応する<span>
(例: "2"、"3" など) 私が達成しようとしているのは次のとおりです。
バリデーターが実行されると、.parent()
各入力の要素が赤くなります。それは働いています。ユーザーが入力を変更すると、.parent()
要素は元の色に戻ります。それも機能しています。
input
これに加えて、各セクションの対応する<span>
赤 (テキストまたは背景)を変更したいと思います。次に、そのセクション内のすべての入力が変更されると、対応する<span>
ものは元の外観に戻ります。1 つの問題 (少なくとも私にとって) は、 、 、またはのいずれかによって、div
入力を含む と対応する<span>
が互いに関連していないように見えることです。.parent()
.child()
.closest