modules\article\views\admin\action.php代码
<script>
function checked($id){
var vals = $("#name").val();
var id=$id;
$.ajax({
type:'post',
url:"<?= yii\helpers\Url::to(['admin/up']) ?>",路径老是出错
data:{name:vals,id:id},
success:function(msg){
alert(msg);
//$("#name").val(vals);
}
});
}
</script>
<?= app\widgets\GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\CheckboxColumn'],
'title',
[
'attribute' => 'cate',
'format' => 'raw',
'value' => function($model){
return Html::dropDownList("cates[{$model->id}]",$model->cate,\common\models\Article::$cates,['id'=>'name','onchange' =>"checked($model->id)"]) ;
}
],
[
'class' => 'app\widgets\ActionColumn',
'template' => '{update} {view} {delete}',
],
]
])?>
modules\article\controllers\AdminController.php代码,我建了一个up方法,想通过它来修改ajax传过来的值
public function actionUp(){
}
请各位大神帮忙解决一下,哪里有问题,控制文件里帮忙完善起来。
你说的路径出错是报的是 404还是400。如果是400,提交的数据无法被验证的话,那无关路径,可能是yii本身开启了 csrf,只需关闭 csrf认证,或在ajax那里提交csrf 就可以了。
关闭方法,在你的 AdminController.php 里加入
你可以参考这个:http://www.yiichina.com/tutorial/449
<?= Url::to([‘admin/up’]) ?>
use yii\helpers\Url; 命名空间加到顶部
代码复制出来看下
这是异步调用 返回的是json 打印不出来的
admin/up&name=1&id=2 这个url访问看下
你访问的url复制出来看下
var_dump(‘11111111111111111111111111111111111111111111111111’); 改成 echo 1;die;