場景一、有一個輸入金額的場景,這個金額需要驗證,驗證說明如下:
不能為空格;
不能為0;
不能為漢字;
不能為其它字符;
不能大于200;
唯一可以的是,只有輸入3~199之間的數字,下面的確定按鈕才會顯示,否則,隱藏這個按鈕。
HTML:
<!--醫(yī)生問診金額--> <div class="weui-jiaj-panel"> <div class="weui-jiaj-money-box dialog js_show"> <div class="weui-jiaj-money-box-btn"> </div> <div class="weui-jiaj-money-box-three"> <div class="weui-flex__item"> <a id="showMoney" href="javascript:;" rel="external nofollow" class="weui-btn weui-btn_mini weui-btn_default">其它</a> </div> </div> </div> </div> <!--其它金額--> <div class="weui_dialog_alert" id="showMoneyDialog" style="display: none;"> <div class="weui_mask"></div> <div class="weui_dialog"> <div class="weui_dialog_hd"><strong class="weui_dialog_title">其它金額</strong></div> <div class="weui_dialog_bd"> <div class="weui-jiaj-dialog-panel"> <div class="weui-cell"> <div class="weui-cell__bd"> <input id="dialogPrice" type="text" required class="weui-input" placeholder="¥10" /> </div> </div> </div> </div> <div class="weui_dialog_ft"> <div id="otherPriceBtn" class="weui_btn_dialog primary">確定</div> </div> </div> </div>
JS:
<script>      //設置其它金額      var doctorPrices = [{        "doctorPrice": "5"      }, {        "doctorPrice": "10"      }, {        "doctorPrice": "15"      }, {        "doctorPrice": "20"      }, {        "doctorPrice": "30"      }, {        "doctorPrice": "60"      }];      var userId = $.cookie('doctorId');      $(function() {        selectedPrice();      });      var page = $('.page'); //頂層div      var panel = page.find('weui-jiaj-panel');      function selectedPrice() {        var $titleHtml = '';        for(var a = 0; a < doctorPrices.length; a++) {          var priceName = doctorPrices[a].doctorPrice;          //點周weui_btn_dialog隱藏          $titleHtml += '<button class="price_btn weui-btn weui-btn_mini weui-btn_warn"' + 'name=' + priceName + '>' + priceName + '</button>';          $('.price_btn').css('margin', '5px');        }        $('.weui-jiaj-money-box-btn').append($titleHtml);        //選擇金額        $('.price_btn').click(function() {          var titleValue = $(this).attr('name'); //$(this)表示獲取當前被點擊元素的name值          var data = {            userId: userId,            price: titleValue          };          data = JSON.stringify(data);          $.ajax({            data: {},            dataType: 'json',            type: "post",            url: postDoctorPrice().replace("{userId}", userId).replace("{price}", titleValue),            contentType: 'application/json; charset=utf-8',            success: function(data) {              if(data && data.status == '200') {                weui.topTips('提交成功');              }            },            error: function(data) {              location.href = 'doctor_wode.html';            }          });        });        //其它金額        $('#otherPriceBtn').on('click', function(e) {          var otherPrice = $('#dialogPrice').val();          otherPrice = parseInt(otherPrice);          otherPrice = otherPrice.toString();          console.log("其它金額" + otherPrice);          var data = {            userId: userId,            price: otherPrice          };          data = JSON.stringify(data);          $.ajax({            data: {},            dataType: 'json',            type: "post",            url: postDoctorPrice().replace("{userId}", userId).replace("{price}", otherPrice), //post 時url帶參數            contentType: 'application/json; charset=utf-8',            success: function(data) {              if(data && data.status == '200') {                weui.topTips('設置成功!');              }            },            error: function(data) {              location.href = 'doctor_wode.html';            }          });        });      }      //驗證      $('input').on('blur',function(){        var value = this.value;        var regChinese = new RegExp("[//u4E00-//u9FFF]+","g");        //字符串不能為空        if(value.length == 0) {          $('#otherPriceBtn').hide();          weui.topTips('不能為空');          //字符串是否為“空”字符即用戶輸入了空格        }else if(value.replace(/(^s*)|(s*$)/g, "").length ==0){          $('#otherPriceBtn').hide();          weui.topTips('不能為空');          //字符串是否為空或者全部都是空格        }else if(value == null){          $('#otherPriceBtn').hide();          weui.topTips('不能為null');          //字符串是否為漢字        }else if(regChinese.test(value)){          $('#otherPriceBtn').hide();          weui.topTips('不能輸入漢字');          //字符串不能為0        }else if(parseInt(value) == 0){          $('#otherPriceBtn').hide();          weui.topTips('不能為0');          //不能大于200        }else if(parseInt(value) > 200){          $('#otherPriceBtn').hide();          weui.topTips('自定義金額不能大于200元');          //自定義金額只能是數字        }else if(typeof(parseInt(value))){          $('#otherPriceBtn').show();        }      })    </script>

場景二、所有違反規(guī)距的都有信息提示,但是“確定”按鈕不隱藏,只是刪除它的click事件,只有符合條件的才可以跳轉
//驗證      $('input').on('blur', function() {        var value = this.value;        var regChinese = new RegExp("[//u4E00-//u9FFF]+", "g"); //漢語        var specialSymbol =/[`~!@#$%^&*_+<>{}//'[/]]/im; //特殊符號        //字符串不能為空        if(value.length == 0) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不能為空,請重新輸入');          }, 500);          //字符串是否為“空”字符即用戶輸入了空格        } else if(value.replace(/(^s*)|(s*$)/g, "").length == 0) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不能為空,請重新輸入');          }, 500);          //字符串是否為空或者全部都是空格        } else if(value == null) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不能為空,請重新輸入');          }, 500);          //字符串是否為漢字        } else if(regChinese.test(value)) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不能輸入漢字,請重新輸入');          }, 500);          //字符串不能為0        } else if(parseInt(value) == 0) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不能為0,請重新輸入');          }, 500);          //小于3        } else if(parseInt(value) < 4) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('自定義金額不能小于3,請重新輸入');          }, 500);          //不能大于200        } else if(parseInt(value) > 200) {          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('自定義金額不能大于200,請重新輸入');          }, 500);        } else if(specialSymbol.test(value)){          //禁止輸入特殊字符          $('#otherPriceBtn').unbind('click');          setTimeout(function() {            $('.hide-description').css('display', 'block').text('不可輸入!@#¥%……&*特殊字符!');          }, 500);          //自定義金額只能是數字        } else if(typeof(parseInt(value))) {          setTimeout(function() {            $('.hide-description').css('display', 'block').text('你設置的金額為' + value);          }, 500);          //其它金額          $('#otherPriceBtn').on('click', function(e) {            var otherPrice = $('#dialogPrice').val();            otherPrice = parseInt(otherPrice);            otherPrice = otherPrice.toString();            console.log("其它金額" + otherPrice);            var data = {              userId: userId,              price: otherPrice            };            data = JSON.stringify(data);            $.ajax({              data: {},              dataType: 'json',              type: "post",              url: postDoctorPrice().replace("{userId}", userId).replace("{price}", otherPrice), //post 時url帶參數              contentType: 'application/json; charset=utf-8',              success: function(data) {                if(data && data.status == '200') {                  weui.topTips('設置成功!');                }              },              error: function(data) {                location.href = 'doctor_wode.html';              }            });          });        }      })以上這篇巧用weui.topTips驗證數據的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。
新聞熱點
疑難解答