我在使用以下jquery代码时出现问题
$this->registerJs(
'jQuery(document).ready(function($){
$(".member").on("change",function(){
var id = $(this).attr("id");
// alert(id);
var n = $(this).val();
// alert(n);
$.post("'.\Yii::$app->getUrlManager()->createUrl(['death/stl_set_relation','id'=>'+id'])
.'&name="+id)
});
});'
);
我希望ajax链接与此http://192.168.1.4/~user/church/backend/web/death/stl_set_relation?id=20&name=1
但是我的代码“我无法正确传递id的值”。 我的代码创建的是以下url
http://192.168.1.4/~user/church/backend/web/death/stl_set_relation?id=%2Bid&name=20
我也试过这个
$.post("'.\Yii::$app->getUrlManager()->createUrl(['death/stl_set_relation','id'=>'"+id"'])
.'&name="+id)
但它没有给我想要的结果
如何才能正确传递id的值?
答案 0 :(得分:2)
尝试这样可能会起作用..
$.post("'.\Yii::$app->getUrlManager()->createUrl(['death/stl_set_relation','id'=>'"+id+"'])
.'&name="+n);
答案 1 :(得分:1)
您可以通过使用yii\helpers\Url
类的其他方式执行此操作。
例如:
$this->registerJs(
'jQuery(document).ready(function($){
$(".member").on("change",function(){
var id = $(this).attr("id");
// alert(id);
var n = $(this).val();
// alert(n);
$.post( "'.Url::toRoute('death/stl_set_relation').'", { id: id, name: id });
});
});'
);
答案 2 :(得分:1)
我使用以下代码
解决了这个问题$.post("'.\Yii::$app->getUrlManager()->createUrl(['death/stl_set_relation'])
.'?id="+id+"&relation="+n)
答案 3 :(得分:0)
试试这一行
mod
。
无论你在单引号中写什么,都会在JS中打印出来。您正在打印$.post("<?php echo \Yii::$app->getUrlManager()->createUrl([\'death/stl_set_relation\']) ?>?id="+id+"&name="+id)
符号。你也在PHP范围内使用+
,但情况并非如此。