Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Validation 主干视图无法退出单击事件验证_Validation_Backbone.js_View - Fatal编程技术网

Validation 主干视图无法退出单击事件验证

Validation 主干视图无法退出单击事件验证,validation,backbone.js,view,Validation,Backbone.js,View,我使用两阶段浏览器验证,bootstrap acknowledgeinput确保字段不为空,jqBootstrapValidate in处理真实验证和正则表达式模式,并在表单字段下方添加一个棕色文本,给出错误。当用户单击[REGISTER]时按钮,我检测到它并将JSon数据发送到一些PHP,这些PHP进行服务器端验证。如果失败,它将填充不同标记中的文本,这些标记显示服务器端输入数据错误 我正在检测错误标签,但我不知道如何退出click事件而只是坐着 在不完整的表单上等待用户更正客户端验证 var

我使用两阶段浏览器验证,bootstrap acknowledgeinput确保字段不为空,jqBootstrapValidate in处理真实验证和正则表达式模式,并在表单字段下方添加一个棕色文本,给出错误。当用户单击[REGISTER]时按钮,我检测到它并将JSon数据发送到一些PHP,这些PHP进行服务器端验证。如果失败,它将填充不同
  • 标记中的文本,这些标记显示服务器端输入数据错误

    我正在检测错误标签,但我不知道如何退出click事件而只是坐着 在不完整的表单上等待用户更正客户端验证

    var RegisterView = Backbone.View.extend({
    
             el: $("#container"),
    
              events: {
                       'click .btn-primary'   : 'saveClient',    
                       'blur input#loginname'      : 'userCheck'
              },
    
         saveClient: function (e) {
    
              $('ul li').each(function(index){
                 if( $(this).text().length !== 0 ){
                     alert('client side error found');
                     return false;
                    }
                });
    
                var loginname  = $('#loginname').val(),
                  password  = $('#password').val(),
                  first     = $('#first').val(),
                  last      = $('#last').val(),
                  addr1     = $('#addr1').val(),
                  addr2     = $('#addr2').val(),
                  city      = $('#city').val(),
                  state     = $('#state').val(),
                  zip       = $('#zip').val(),
                  phone     = $('#phone').val(),
                  phone2    = $('#phone2').val(),
                  verified  = 'N';
    
                   registermodel = new RegisterModel({
                       loginname     :  loginname,
                  password  :  password,
                  first     :  first,
                  last      :  last,
                  addr1     :  addr1,
                  addr2     :  addr2,
                  city      :  city,
                  state     :  state,
                  zip       :  zip,
                  phone     :  phone,
                  phone2    :  phone2,
                           verified  :  verified
                     });
                   registermodel.save();
                   return false;
        }
    

    如果您想做的是:

    如果在客户端检测到错误,请不要保存注册表模型

    如果检测到错误,只需退出
    saveClient
    功能(请参阅
    hasrerror
    boolean):

    saveClient: function (e) {
    
      var hasError = false;
    
      $('ul li').each(function(index){
        if( $(this).text().length !== 0 ){
         alert('client side error found');
         hasError = true;
         return false; // this 'return false;' exits the .each loop function NOT the saveClient function
        }
      });
    
      if (hasError)
          return false; // this one does exit the saveClient function
    
      // Code continues here..
      // ...
    }