ここに別の質問があることは知っていますが、これは私にはうまくいきません。
したがって、私は約40のフィールドを持つ非常に大きなフォームを持っており、各フィールドを個別に通過するのは面倒です。そこで、50のフィールドをカテゴリに分割し、各入力カテゴリにIDを割り当てました。たとえば、10の価格フィールドがあります。標準配送、速達配送、ラッシュ配送、スーパーラッシュ配送の4つのカテゴリで10個の数量。そのため、同じIDを持つ1つのカテゴリのすべての価格に名前を付けました。たとえば、標準配送は次のようになります。
<id input type="text" name="s_qty_25" id="s_cf" />
<id input type="text" name="s_qty_50" id="s_cf" />
<id input type="text" name="s_qty_100" id="s_cf" />
.... and so on
私のフォームは次のように定義されています:
<form method="post" id="creation_form" action="actions/add_prices.php">
....
</form>
検証に使用するjQueryは次のようになります。
$(function() {
$('#creation_form').submit(function(e){
$("#cs_f").each(function(index, obj){
var cs_f_val = $(obj).val();
if(cs_f_val == ''){
$(obj).attr('style', 'background:red;');
valid = false;
}
});
//...repeat the snipet for each 3 remaining price groups
return valid;
});
});
基本的に、空の場合はフィールドを赤にして、送信をキャンセルします。ただし、最初のフィールドのみが赤い背景になります。
助けてくれてありがとう:)