yii2 dropDownList 中的 onchange 函数

onchange function in dropDownList yii2

我在 onchange dopDownList 事件中有一个函数 (getArticleByFamille),如下所示:

<?= $form->field($modelFamille, 'idFamille')->dropDownList(
    ArrayHelper::map(Famille::find()->all(), 'idFamille', 'libelle'),
    [
        'prompt' => 'Sélectionner la Categorie',
        'class' => 'chosen-select mb-15',
        'onchange' => 'getArticleByFamille(this.value,"vente/devis","' . Yii::$app->getUrlManager()->getBaseUrl() . '","ArticleByFamille")'
    ]
)->label(false); ?>

但是当我调用这个函数时,它不起作用,当我检查时我有这个代码:

onchange="getArticleByFamille(this.value,&quot;vente/devis&quot;,&quot;/performancia/web&quot;,&quot;ArticleByFamille&quot;)"

报价已更改

这是因为发生编码(默认启用)。

试试这个(未测试):

[
    'prompt'   => 'Sélectionner la Categorie',
    'class'    => 'chosen-select mb-15',
    'onchange' => new \yii\web\JsExpression( 'getArticleByFamille(this.value,"vente/devis","' . Yii::$app->getUrlManager()->getBaseUrl() . '","ArticleByFamille")' )
]