欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Yii2實現(xiàn)ActiveForm ajax提交

 更新時間:2017年05月26日 14:06:40   作者:Yii2實戰(zhàn)教程  
這篇文章主要 為大家詳細(xì)介紹了Yii2實現(xiàn)ActiveForm ajax提交的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

做項目時總會碰到ajax提交的功能,特別是在做后臺提交時,一般都會用模型自動生成,這個功能的使用會比較頻繁,其實只要了解了流程,操作還是挺簡單的,使用起來也方便。

表單部分

<?php $form = ActiveForm::begin([ 
  'action' => ['save'], //提交地址(*可省略*) 
  'method'=>'post',  //提交方法(*可省略默認(rèn)POST*) 
  'id' => 'form-save', //設(shè)置ID屬性 
  'options' => [ 
    'class' => 'form-horizontal', //設(shè)置class屬性 
  ], 
  'enableAjaxValidation' => true, 
  'validationUrl' => 'validate-view', 
]); ?> 
 
<?php echo $form->field($model,'company_name', ['inputOptions' => ['placeholder'=>'請輸入商家名稱','class' => 'form-control'], 'template'=>'<label for="inputCompanyName" class="col-sm-1 control-label"><span class="text-red">*</span> 商家名稱</label><div class="col-md-8">{input}</div><label class="col-sm-3" for="inputError">{error}</label>'])->textInput()?> 
 
<?=Html::submitButton('保存',['class'=>'btn btn-primary']); ?> 
 
<?php ActiveForm::end(); ?> 

其中:'enableAjaxValidation' => true, 必須設(shè)置,告訴表單用ajax提交

控制器(controller)部分

控制器分兩部分,一部分是效驗表單的正確性,另外一部分是保存

1、效驗部分

public function actionValidateView() 
{ 
  $model = new model(); 
  $request = \Yii::$app->getRequest(); 
  if ($request->isPost && $model->load($request->post())) { 
    \Yii::$app->response->format = Response::FORMAT_JSON; 
    return ActiveForm::validate($model); 
  } 
} 

2、保存部分

public function actionSave() 
{ 
  \Yii::$app->response->format = Response::FORMAT_JSON; 
  $params = Yii::$app->request->post(); 
  $model = $this->findModel($params[id]); 
 
  if (Yii::$app->request->isPost && $model->load($params)) { 
    return ['success' => $model->save()]; 
  } 
  else{ 
    return ['code'=>'error']; 
  } 
} 

Ajax提交from表單

$(function(){ 
$(document).on('beforeSubmit', 'form#form-save', function () { 
    var form = $(this); 
    //返回錯誤的表單信息 
    if (form.find('.has-error').length) 
    { 
      return false; 
    } 
    //表單提交 
    $.ajax({ 
      url  : form.attr('action'), 
      type  : 'post', 
      data  : form.serialize(), 
      success: function (response){ 
        if(response.success){ 
          alert('保存成功'); 
          window.location.reload(); 
        } 
      }, 
      error : function (){ 
        alert('系統(tǒng)錯誤'); 
        return false; 
      } 
    }); 
    return false; 
  }); 
}); 

特別注意本人用的是Yii2 adminlte框架后臺,具體操作過程試項目而定,基本操作過程都一樣。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Laravel框架控制器,視圖及模型操作圖文詳解

    Laravel框架控制器,視圖及模型操作圖文詳解

    這篇文章主要介紹了Laravel框架控制器,視圖及模型操作,結(jié)合實例形式詳細(xì)分析了laravel框架控制器,視圖及模型的基本功能、原理與相關(guān)操作使用技巧,需要的朋友可以參考下
    2019-12-12
  • Zend Framework實現(xiàn)多文件上傳功能實例

    Zend Framework實現(xiàn)多文件上傳功能實例

    這篇文章主要介紹了Zend Framework實現(xiàn)多文件上傳功能的方法,較為詳細(xì)的分析說明了Zend Framework實現(xiàn)多文件上傳的具體步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2016-03-03
  • [php] 我的微型論壇的簡單教程[已完成]

    [php] 我的微型論壇的簡單教程[已完成]

    [php] 我的微型論壇的簡單教程[已完成]...
    2007-05-05
  • phpstudy本地環(huán)境搭建超詳細(xì)圖文教程

    phpstudy本地環(huán)境搭建超詳細(xì)圖文教程

    這篇文章主要給大家介紹了關(guān)于phpstudy本地環(huán)境搭建超詳細(xì)圖文教程的相關(guān)資料,phpStudy是集安全、高效、功能于一體且完全免費的一鍵服務(wù)器環(huán)境搭建軟件,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • thinkphp,onethink和thinkox中驗證碼不顯示的解決方法分析

    thinkphp,onethink和thinkox中驗證碼不顯示的解決方法分析

    這篇文章主要介紹了thinkphp,onethink和thinkox中驗證碼不顯示的解決方法,簡單分析了thinkPHP驗證碼不顯示的原因與相應(yīng)的解決方法,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • 檢測codeigniter腳本消耗內(nèi)存情況的方法

    檢測codeigniter腳本消耗內(nèi)存情況的方法

    這篇文章主要介紹了檢測codeigniter腳本消耗內(nèi)存情況的方法,實例分析了codeigniter中memory_usage方法及{ memory_usage}偽變量的使用技巧,需要的朋友可以參考下
    2015-03-03
  • 使用array_map簡單搞定PHP刪除文件、刪除目錄

    使用array_map簡單搞定PHP刪除文件、刪除目錄

    這篇文章主要介紹了使用array_map簡單搞定PHP刪除文件、刪除目錄的相關(guān)資料,需要的朋友可以參考下
    2014-10-10
  • PHP OPP機制和模式簡介(抽象類、接口和契約式編程)

    PHP OPP機制和模式簡介(抽象類、接口和契約式編程)

    本文將介紹抽象類、接口和一種稱為契約式編程的技術(shù)。使用這些OPP機制,所編寫的代碼就不限于只能計算或者輸出內(nèi)容了。這些機制能夠在概念層次上定義類之間交互作用的規(guī)則,也為應(yīng)用程序的擴(kuò)展和定制提供了基礎(chǔ)。
    2014-06-06
  • Laravel事件系統(tǒng)實現(xiàn)瀏覽量的統(tǒng)計

    Laravel事件系統(tǒng)實現(xiàn)瀏覽量的統(tǒng)計

    Laravel的事件系統(tǒng)提供了一種簡單而強大的方式來實現(xiàn)瀏覽量的統(tǒng)計,通過創(chuàng)建瀏覽事件和事件監(jiān)聽器,以及在合適的地方觸發(fā)事件,我們可以輕松地實現(xiàn)網(wǎng)頁瀏覽量的統(tǒng)計功能,本文將介紹如何使用Laravel的事件系統(tǒng)來實現(xiàn)瀏覽量的統(tǒng)計
    2024-03-03
  • 深入php之規(guī)范編程命名小結(jié)

    深入php之規(guī)范編程命名小結(jié)

    本篇文章是對php中規(guī)范編程命名進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05

最新評論