私が取り組んでいるページでは、送信するために ddslick で作成されたドロップダウン ボックスの値を選択する必要があります。ドロップダウンが機能しています。選択したときの値は、PHP で POST 値を解析しているターゲット ページに渡されます。ただし、この ddslick ドロップダウン ボックスの検証で問題が発生しています。送信前に値が選択されていることを確認するため。
これが私が持っている選択ボックスです:
<select name="backing" id="backing" class="ddslick-select">
<option value="">Select Back Style</option>
<option value="red">Red</option>
<option value="orange">Orange</option>
</select>
このコードを使用してバッキング値を取得しています。
<script type="text/javascript">
$('#backing').ddslick({
showSelectedHTML: false,
onSelected: function(data){
alert(data.selectedData.value);
}
});
</script>
提出すると #backing の $_POST 値が通ります。ただし、値が選択されていることを確認するために検証する際に問題が発生しています。
フォームには送信ボタンがあり、この onsubmit 関数を使用して Quantity と Back スタイルを検証します。
<a href="#" class="btn btn-cart right" onclick="javascript:return validateCart();">Add to cart</a>
ここに Javascript 関数があります。Qty は検証されていますが、ddslick のドロップダウンは検証されていません。ドロップダウンから class="ddslick-select" を削除して通常のドロップダウン ボックスにすると、検証は正常に機能します。
ValidateCart() の Javascript 関数は次のとおりです。
function validateCart(){
var error = "";
if(document.getElementById("qty").value == '') {
error += "You must select Quantity\n";
}
if(document.getElementById("backing").value == '') {
error += "You must select a Backing Design\n";
}
if(error !== '') {
alert(error);
return false;
} else {
document.productorder.submit();
}
}
私の質問は、ドロップダウンボックスを検証するために現在持っているものをどのように変更できますか?
ありがとう!