猿问

如何验证我的联系表单中的选择选项?

为什么它没有验证我的联系表单中的选择选项?我曾尝试使用此 js 代码,但它不适用于选择的代码,它仅适用于输入和文本区域。我需要在这里更改什么才能使其正常工作?感谢帮助者。


jQuery(document).ready(function($) {

  "use strict";


  //Contact

  $('form.contactForm').submit(function() {

    var f = $(this).find('.form-group'),

      ferror = false,

      emailExp = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i;


    f.children('input').each(function() { // run all inputs


      var i = $(this); // current input

      var rule = i.attr('data-rule');


      if (rule !== undefined) {

        var ierror = false; // error flag for current input

        var pos = rule.indexOf(':', 0);

        if (pos >= 0) {

          var exp = rule.substr(pos + 1, rule.length);

          rule = rule.substr(0, pos);

        } else {

          rule = rule.substr(pos + 1, rule.length);

        }


        switch (rule) {

          case 'required':

            if (i.val() === '') {

              ferror = ierror = true;

            }

            break;


          case 'minlen':

            if (i.val().length < parseInt(exp)) {

              ferror = ierror = true;

            }

            break;


          case 'email':

            if (!emailExp.test(i.val())) {

              ferror = ierror = true;

            }

            break;


          case 'checked':

            if (! i.is(':checked')) {

              ferror = ierror = true;

            }

            break;


          case 'regexp':

            exp = new RegExp(exp);

            if (!exp.test(i.val())) {

              ferror = ierror = true;

            }

            break;

        }

        i.next('.validation').html((ierror ? (i.attr('data-msg') !== undefined ? i.attr('data-msg') : 'wrong Input') : '')).show('blind');

      }

    });

    f.children('select').each(function() { // run all inputs


      var i = $(this); // current input

      var rule = i.attr('data-rule');


神不在的星期二
浏览 131回答 2
2回答

饮歌长啸

也许select已经选择了一个非空值,因此不会触发错误条件。您的页面有:<option&nbsp;selected&nbsp;disabled&nbsp;value="Select&nbsp;Service">Select&nbsp;Service</option>将value属性设置为空字符串:<option&nbsp;selected&nbsp;disabled&nbsp;value="">Select&nbsp;Service</option>

慕勒3428872

使用这个函数来修复它:function JSFunctionValidate() {if(document.getElementById('service').selectedIndex == 0) {&nbsp; &nbsp; alert("Please select service");&nbsp; &nbsp; return false;}return true;}让我知道。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答