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();
    }

});
4

1 回答 1

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 完成的

于 2012-04-17T11:58:41.617 回答