繁体   English   中英

yii2 Ajax请求错误404

[英]yii2 Ajax Request Error 404

我想在yii2(PHP框架)中使用ajax,但我使用以下代码,但它不起作用。

我的视图文件(PHP):

<script>
var url1='<?php echo  Url::toRoute('Agehi/Ajaxshahr'); ?>';
</script>
<?php
$script= <<<JS
    function selectshahr()
    {
        var ost = $("#ostan").val();
        $.ajax(
        {
            type: "post",
            url: url1,
            data: ost,
            cache: false,
            success: function(data)
            {
                alert(data);
            }
        });

    }
JS;
$this->registerJs($script,View::POS_BEGIN);

$form = ActiveForm::begin([
    'id' => 'login-form',
    'options' => ['class' => 'form-horizontal','enctype'=>'multipart/form-data'],
]);
echo $form->errorSummary($model,['header'=>'لطفا خطاهای زیر را برطرف نمایید','class'=>'']);
echo \vova07\imperavi\Widget::widget([
    'selector' => '#content','name'=>'content',
    'settings' => [
        'lang' => 'fa',
        'minHeight' => 200,
        'plugins' => [
            'clips',
            'fullscreen'
        ]
    ]
]);
?>
<?= Html::label('استان','ostan',array()) ?>
<?= Html::dropDownList('ostan', null,
    ArrayHelper::map($ostan, 'id', 'name'),array('class'=>'form-control','onchange'=>'selectshahr()','id'=>'ostan')) ?>
<?= Html::label('شهرستان/شهر','shahr',array()) ?>
<?= Html::dropDownList('shahr', null,
    array(),array('class'=>'form-control')) ?>

在我的控制器中:

class AgehiController extends \yii\web\Controller
{
    public function  actionAjaxshahr($ostan)
    {
        $data = Shahr::findAll('condition', 'osid=' . $_POST['data']);
        if(yii::$app->request->isAjax())
        {
            return $this->renderPartial('_Ajax_shahr', array('data' => $model));
        }
        return $this->renderPartial('_Ajax_shahr', array('data' => $model));

    }

}

一切似乎都还不错,但是它没有响应我使用浏览器开发人员工具检查过的任何请求,并且将AJAX视为404错误

路由中的控制器和动作名称应小写。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM