2015-02-04 4 views
-1
<select name="child_class" class="drop-select-2"> 
    <option value="" >Choose...</option> 
    <option value="1" >1</option> 
    <option value="2" >2</option> 
</select> 

У меня этот выбор. Я хочу использовать валидатор jQuery в своей форме и не разрешать выбор «Выбрать ...». Я прочитал много вопросов с stackoverflow с той же проблемой, и везде это значение value = "" делает это. Но в моем случае это не работает, валидатор просто не подтверждает этот ввод. Почему это?JQuery validator не работает с выбранным входом

В правилах валидатора у меня есть:

rules: { 
    child_class:  'required' 
    ... 
} 

Что не так?

+0

может у вставить полный HTML код – abhiklpm

+0

Покажите нам достаточно кода, чтобы воспроизвести проблему , Ваш код работает. http://jsfiddle.net/db138t4y/ – Sparky

ответ

0

Он работает должным образом здесь ->Working FIDDLE

<form name="test" id="test"> 
<select name="child_class" class="drop-select-2"> 
    <option value="" >Choose...</option> 
    <option value="1" >1</option> 
    <option value="2" >2</option> 
</select> 
    <input type="submit"/> 
</form> 

// validate edit Category form when it is submitted 
    jQuery("#test").validate({ 
     errorElement: 'div', 
     errorClass:'errorjQuery',  
     rules: { 

      'child_class': { 
       required: true     
      }       
     }, 
     messages: { 

      'child_class': { 
       required: "Please choose 1 value.", 
      }    
     }, 
     errorPlacement: function(error, element) { 
      error.appendTo( element.parent() ); 
      $(".error-message").remove();   
     }, 

     submitHandler: function(form) { 
      jQuery('input[type=submit]', form).attr('disabled', 'disabled');    
      idd = form.attr("id");   
      form.submit();   
     } 
    }); 
+0

Возможно, вы забыли использовать именование тегов

или присвоить атрибут имени других тегов. –

0

По существу такой же, как @ jQuery.PHP.Magento.com отвечают, это работает:

jQuery(window).ready(function() { 
 
    jQuery('#your_form').validate({ 
 
    rules: { 
 
     child_class:  'required' 
 
    }, 
 
    submitHandler: function(form) { 
 
     alert('k'); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="http://cdn.jsdelivr.net/jquery.validation/1.13.1/jquery.validate.min.js"></script> 
 

 
<form id="your_form"> 
 
    <select name="child_class" class="drop-select-2"> 
 
    <option value="" >Choose...</option> 
 
    <option value="1" >1</option> 
 
    <option value="2" >2</option> 
 
    </select> 
 
    
 
    <button type="submit">Send</button> 
 
</form>

0

Ваш код работает точно так же, как вы его представили.

HTML:

<form id="myform"> 
    <select name="child_class" class="drop-select-2"> 
     <option value="">Choose...</option> 
     <option value="1">1</option> 
     <option value="2">2</option> 
    </select> 
    <input type="submit" /> 
</form> 

JQuery:

$(document).ready(function() { 

    $("#myform").validate({ 
     rules: { 
      child_class: 'required' 
     } 
    }); 

}); 

DEMO: http://jsfiddle.net/x21hnemb/