と の 3 つの入力フィールド#product_upc
が#product_price
あり#product_quantity
、それらは同じ場所にあります。チェックボックスが#to_hide
あり、ユーザーがチェックすると、3 つの入力が非表示になります (hide()
メソッドを使用)。ユーザーがチェックボックスをオフにすると、3 つの入力が再び表示されます。今回はshow()
メソッドを使用します (toggle()
代わりに use を使用することもできますが、このアプローチを使用することをお勧めします)。
ここで、フォームを送信するときに、これら 3 つの入力が表示されているかどうかを確認する必要があります。表示されている場合は、それらが空でないことを検証し、関数#product_upc
を呼び出して UPC の有効性を確認する必要がありcheckUPC(param)
ます。
私はこのコードを作成しましたが、要素がvisible
あり、コードが検証を通過しないため、機能しません:
if (($("#product_upc").val() !== '' || $("#product_upc").val().length >= 0) && $("#product_upc").is(":visible")) {
if (checkUPC($("#product_upc").val()) === false) {
alert("El UPC es inválido");
valid = false;
return false;
}
}
if ($("#product_price").is(":visible")) {
if (!$.trim($("#product_price")).length) {
alert("Debes escribir un precio");
valid = false;
$(this).focus();
return false;
}
}
if ($("#product_quantity").is(":visible")) {
if (!$.trim($("#product_quantity")).length) {
alert("Debes escribir una cantidad");
valid = false;
$(this).focus();
return false;
}
}
私が犯した間違いはどれですか?