javascript - 解析 JS 文件中的 PHP 数组,并在 PHP 解析数组中包含 JS 变量 -YII2

标签 javascript php jquery yii yii2

我应该怎么做?

 $ids = ArrayHelper::map(Tours::find()->select(['pk', 'programa'])->asArray()->all(), 'pk', 'programa');


$this->registerJs('
$("#child1_child2").change(function() {
    var val = $("#child1_child2 option:selected").val();
    valInt = parseInt(val);
    $("#form").attr("action", "programas/" + "'.$ids[.'"valInt"'.].'");
});
', \yii\web\View::POS_END);

我不知道如何解析这部分:

$("#form").attr("action", "programas/" + "'.$ids[.'"valInt"'.].'");

$ids 这是一个 php 数组

valInt 是一个 js 变量

我认为这是正确的,但我遇到了解析错误

syntax error, unexpected '.', expecting ']'

如果我写 "'.$ids[40].'" 它工作得很好并且没有错误。

这是在 site/index.php 的 View 中,与 Yii2 一起使用。

感谢您的帮助!

最佳答案

试试这个

$ids = ArrayHelper::map(Tours::find()->select(['pk', 'programa'])->asArray()->all(), 'pk', 'programa');


$this->registerJs('
$("#child1_child2").change(function() {
    var val = $("#child1_child2 option:selected").val();
    valInt = parseInt(val);
    var $ids = '. json_encode($ids) .';
    $("#form").attr("action", "programas/" + $ids[valInt]);
});
', \yii\web\View::POS_END);

关于javascript - 解析 JS 文件中的 PHP 数组,并在 PHP 解析数组中包含 JS 变量 -YII2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40898155/

相关文章:

javascript - Bootstrap Accordion - 除非用户单击关闭,否则不要关闭其他 Accordion

javascript - 复选框更改时,AngularFire 3 向数据绑定(bind)不会更新 firebase

php - 如何替换PHP中固定位置的字符?

php - 省略关闭 PHP 标签

jquery点击更改类

javascript - 编辑 JavaScript 函数,使其仅适用于指定的 div,而不适用于所有 div

php - 从 SimpleXMLElement 对象获取值

jquery - AddClass onClick 不起作用

javascript - jQuery - 动画无法正常工作?

javascript - 单击下一页时隐藏 div