2012-04-17 88 views
0

我有三個下拉字段我想強調的是驗證失敗後的三場,但經過驗證只有一個字段突出顯示,並選擇該字段的形式提交後,其他兩個字段的腳本無法正常工作強調了輸入字段驗證失敗

$("#inputSubmit").click(function(){ 

    var pColor = $("#select").val(); 
    var pSize = $("#select2").val(); 
    var pQuantity = $("#select3").val(); 


    if((pColor == '') || (pColor == 'color')) 
    { 

     $("#select").css("border-color", "red"); 
     $("#error").show(); 

    } 
    if((pSize == '') || (pSize == 'size')) 
    { 
     alert(1); 
     $("#select2").css("border-color", "red"); 

    } 

    if((pQuantity = '') || (pQuantity == 'quantity')) 
    { 
     $("#select3").css("border-color", "red"); 
    } 

    if((pColor != 'color') && (pSize != 'size') && (pQuantity != 'quantity')) 
    {  

     $("#InputForm").submit(); 
    } 

}); 
+0

嘗試發佈一些html,更好的一個小提琴示例。 – rgin 2012-04-17 11:58:06

回答

1

嘗試是這樣的:

var isValid = $('select').filter(function() { 
    return !this.value || this.value == $(this).data('default-value'); 
}).css("border-color", "red").length​ == 0; 

if (isValid) 
    $("#InputForm").submit(); 

<select>元素把data-default-value屬性與默認值的價值,...... 它與五行做我而不是20

+0

非常優雅的解決方案+1 – 2012-04-17 12:08:58

+0

@RoryMcCrossan。謝謝! – gdoron 2012-04-17 12:12:48