Html Yii2:数据方法='post'正在发送GET请求
我正在对yii2中的现有网页进行更改。 我有这段代码:Html Yii2:数据方法='post'正在发送GET请求,html,yii2,href,Html,Yii2,Href,我正在对yii2中的现有网页进行更改。 我有这段代码: Html::a('Confirm!',[ 'default/apply', 'confirm' => 1, 'id' => $data->id ],['class' => 'btn-primary','data-method' => 'post']) 我已经将它移动到同一页上的另一个容器中 我不得不稍微调整一下,将$data->id更改为$project
Html::a('Confirm!',[
'default/apply',
'confirm' => 1,
'id' => $data->id
],['class' => 'btn-primary','data-method' => 'post'])
我已经将它移动到同一页上的另一个容器中
我不得不稍微调整一下,将$data->id更改为$projectInfo->id,就像之前它在小部件的匿名函数中一样,现在它在foreach循环中。但我认为这与此无关
在更改之前和之后,同一行出现在html中,但出现在页面的不同部分:
<a class="btn-primary" href="/participant/default/apply/13/1" data-method="post">Confirm!</a>
但在执行时,http请求现在作为GET而不是POST发送
之前:POST/participant/default/apply/13/1http/1.1
现在:GET/participant/default/apply/13/1http/1.1
我无法理解为什么会发生这种变化,以及如何让代码在新的位置作为POST工作。此href的执行必须取决于我不知道的其他因素。您可以使用链接发送POST请求,这要感谢yii.js文件中的JavaScript,它以静默的形式将其包装。若这个JS并没有加载到assets中,那个么链接将以标准方式工作,即发送GET请求
检查yii.js通常是通过直接注册yii\web\YiiAsset还是通过依赖项加载的。谢谢!这给了我一个暗示,尽管它并没有完全解决我的问题。1.在html中,我在正文结尾前有一个对yii.js的引用:这个引用是有效的。我可以检查其他东西以确保它已加载吗?2.我的页面中的JS更加复杂,可能会影响如何处理此href。我仍然不确定为什么没有执行与数据方法相关的代码,但我已经得到了我的问题的有效答案。