2013-02-08 54 views

回答

3

我想分享我的片段来验证yii bootstrap ajax表单并突出显示错误和有效字段。该表单应禁用验证。

形式:

$form = $this -> beginWidget('bootstrap.widgets.TbActiveForm', array(
     'id' => 'user-time-form', 
     'type' => 'horizontal', 
)); 

提交按钮:

$this -> widget('bootstrap.widgets.TbButton', array(
      'buttonType' => 'ajaxSubmit', 
      'icon' => 'ok', 
      'url' => Yii::app() -> createUrl('hr/userTime/create'), 
      'label' => 'Submit', 
      'ajaxOptions' => array('success' => 'function(data){ 
        var obj = $.parseJSON(data); 
        if(obj.status=="success"){ 
         $("#newUserTime").modal("hide"); 
         setTimeout(function(){location.reload(true);},400); 
        } else { 
         $("#userTime-form-error-div").show(); 
         $("#userTime-form-error-div").html(""); 
         var $inputs = $("#user-time-form :input"); 
         $inputs.each(function() { 
          $(this).removeClass("error"); 
          $(this).closest(\'div[class^="control-group"]\').addClass("success validating"); 
         }); 
         for (var p in obj) { 
          if(document.getElementById(p)) { 
           $("#"+p).closest(\'div[class^="control-group"]\').removeClass("success"); 
           $("#"+p).closest(\'div[class^="control-group"]\').addClass("error"); 
          } 
          $("#userTime-form-error-div").append(obj[p] + "<br/>"); 
         } 
        } 
       }'), 
    )); 
+0

你应该编辑你的问题,而不是... – soju

0

这个参数添加到您的TbActiveForm

'enableAjaxValidation'=>true,