如何在Yii2中利用Ajax对表单进行提交

  介绍

如何在Yii2中利用Ajax对表单进行提交?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

<强>前言

Yii2现在使用JS都必须要注册代码了。

要实现Ajax提交,有两种方法。一是直接在ActiveForm调用beforeSubmit参数,但是个人认为这样没有很好的把JS和HTML分开,所以我们这篇文章主要介绍第二种方法——外部写JS方法。

<强>表单部分

& lt; ? php  form 美元;=,ActiveForm:开始([   & # 39;才能id # 39;,,,=祝辞,模型→美元formName (),   & # 39;才能行动# 39;,=祝辞,[& # 39;/apitools/违约/指数# 39;】   ]);,?在

<强> Ajax

& lt; php ?   时间=美元js  & lt; & lt; & lt; JS//,get 从而,form  id 以及set 从而事件   美元(& # 39;形式#{$模型→formName ()} & # 39;)。(& # 39; beforeSubmit& # 39;,,函数(e), {   var 才能;\ form 美元=,美元(这);//才能,do  whatever 在这里,,阅读,parameter  \ $形式?,is  a  jQuery  Element 用your 形式   })内(& # 39;提交# 39;,,函数(e) {   e.preventDefault才能();   });   JS;   $ this→registerJs (js);

如果你使用了JsBlock,你还可以这样写:

& lt; ? php  JsBlock:开始(),?比;   & lt;才能script>   ,,,$ (function  (), {   ,,,,,jQuery(& # 39;形式# apitool& # 39;)。(& # 39; beforeSubmit& # 39;,, function  (e), {   ,,,,,,,var  form 美元;=,美元(这);   ,,,,,,,. ajax({美元   ,,,,,,,,,url:, form.attr美元(& # 39;行动# 39;),   ,,,,,,,,,类型:,& # 39;文章# 39;   ,,,,,,,,,数据:,form.serialize美元(),   ,,,,,,,,,成功:,function (数据),{   ,,,,,,,,,,,//do 一些   ,,,,,,,,,}   ,,,,,,,});   ,,,,,})。(& # 39;提交# 39;,,function  (e), {   ,,,,,,,e.preventDefault ();   ,,,,,});   & lt;才能/script>   & lt; ? php  JsBlock:结束(),?在

关于如何在Yii2中利用Ajax对表单进行提交问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

如何在Yii2中利用Ajax对表单进行提交