>백엔드 개발 >PHP 튜토리얼 >Yii2.0 모달 팝업 상자 + Ajax 제출 양식

Yii2.0 모달 팝업 상자 + Ajax 제출 양식

高洛峰
高洛峰원래의
2017-01-09 11:08:111633검색

제목과 같이 모달 팝업 상자 + ajax를 사용하여 양식을 제출합니다. 먼저 인덱스 뷰의 생성 버튼에 data-toggle 및 data-target을 추가합니다.

코드는 다음과 같습니다.

<?php
echo Html::a(&#39;添加请假单&#39;, [&#39;create&#39;], [&#39;class&#39; => &#39;btn btn-success&#39;,&#39;data-toggle&#39;=>&#39;modal&#39;,&#39;data-target&#39;=>&#39;#ajax&#39;])
?>

모달 팝을 표시하려면 인덱스 뷰에 다음 코드를 추가하세요. up box:

<div class="modal bs-example-modal-lg" id="ajax">
 
 <div class="modal-dialog">
  
 <div class="modal-content width_reset" id="tmpl-modal-output-render"> </div>
  
 </div>
 
</div>

수정된 효과는 다음과 같습니다

Yii2.0 模态弹出框+ajax提交表单

그런 다음 create를 수정합니다. 그냥 renderAjax

return $this->renderAjax(&#39;create&#39;, [
 &#39;model&#39; => $model,
]);

양식 유효성 검사를 추가하려면 뷰에서 _form을 수정하고

<?php $form = ActiveForm::begin([&#39;options&#39; => [&#39;enctype&#39; => &#39;multipart/form-data&#39;],&#39;id&#39;=>&#39;leave-form-self&#39;]) ?>
指向 你的models 在rules添加上验证规则
 
 public function rules()
 {
  return [
   [[&#39;t_leave_date&#39;, &#39;t_days&#39;, &#39;t_reason&#39;, &#39;t_nickname&#39;,&#39;t_leave_enddate&#39;], &#39;required&#39;],
   [[&#39;t_leave_date&#39;, &#39;t_leave_enddate&#39;], &#39;safe&#39;],
   [[&#39;t_days&#39;], &#39;number&#39;],
   [[&#39;t_reason&#39;], &#39;string&#39;],
   [[&#39;type&#39;, &#39;add_time&#39;, &#39;uid&#39;, &#39;update_time&#39;, &#39;status&#39;, &#39;is_shen&#39;], &#39;integer&#39;],
   [[&#39;t_pickup&#39;, &#39;t_nickname&#39;, &#39;t_pass&#39;], &#39;string&#39;, &#39;max&#39; => 20],
   [[&#39;t_img&#39;, &#39;reviewer_user&#39;, &#39;audit_user&#39;], &#39;string&#39;, &#39;max&#39; => 255]
  ];
 }

효과는 다음과 같습니다

Yii2.0 模态弹出框+ajax提交表单

이렇게 ajax 제출 양식이 구현됩니다.

Yii2.0 모달 팝업 더보기 box + ajax 제출 양식 관련 글은 PHP 중국어 홈페이지를 주목해주세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.