次のような同じ名前と括弧を持つ複数の入力を持つフォームがあります。
<input name=foo[] id=foo[]/>
入力の量が固定されていないため、角かっこを使用して入力を配列としてPHPで処理しています。
各入力にはデータベースに既に存在する値を含める必要があるため、 AJAX/JQUERYを使用してフォーム検証を追加しようとしています。チェックしたら、入力のCSSを正しい場合は緑に、間違っている場合は赤に変更したいと思います。
AJAX 部分は機能していますが、 JQUERYで入力のCSSを個別に変更することはできません(すべての入力が変更されます)。
私が使用しているコードは次のとおりです。
<script>
$(document).change(function() {
$('input[id="foo[]"]').each(function() {
$(this).change(validate);
});
});
function validate() {
var foo = $(this).val();
if(foo == "" || foo.length < 4) {
$('input[id="foo[]"]').css('border', '3px #C33 solid');
} else {
jQuery.ajax({
type: "POST",
url: "common/check.php",
data: 'foo='+ foo,
cache: false,
success: function(response) {
if(response == 0) {
$('input[id="foo[]"]').css('border', '3px #C33 solid');
} else {
$('input[id="foo[]"]').css('border', '3px #00FF00 solid');
}
}
});
}
}
</script>
ご協力いただきありがとうございます!