这是我的代码:
$(document).on('change', '#tblhotel-int_zone_id', function(e){ var zoneId = $(this).val(); var form_data = { zone: zoneId }; $.ajax({ url: "state", type: "POST", data: form_data, success: function(response) { alert(response); } }); });
由此可见:
错误的请求(#400):无法验证您的数据提交。
而且我已经有了<?= Html::csrfMetaTags() ?>。我该如何解决这个问题?
<?= Html::csrfMetaTags() ?>
您对enableCsrfValidation有问题。要了解更多信息,可以在这里阅读。
要禁用CSRF,请将以下代码添加到您的控制器中:
public function beforeAction($action) { $this->enableCsrfValidation = false; return parent::beforeAction($action); }
这将禁用所有操作。您可能应该根据$ action,仅对特定操作禁用它。