2016-06-30 6 views
0

給与フォームフォームが読み込まれるときに、特定のテキストフィールドでレートチャートモデルからデータを取得したいとします。私は給与_formでyii2でjavascriptを使用してフォームを読み込むとデータが取得できない

public $rateid = '1'; 

public function actionGetForRatechart($rateid) 
    { 
     $rates = Ratechart::find()->where(['rc_id'=> $rateid])->asArray()->one(); 
     echo Json::encode($rates); 
    } 

を追加しましたRatechartコントローラーで

私は、次のJavaScriptコードを追加しました -

<?php 
$script = <<<EOD 
$(window).load(function(){ 
    $.get('index.php?r=salary/ratechart/get-for-ratechart',{ rateid : rateid }, function(data){ 
    alert(data); 
    var data = $.parseJSON(data); 
}); 
EOD; 
?> 

それはどんな結果を与えていません。 Load data to a form from a different model in yii2と同じ質問です。助けてください。

+0

あなたのURLは間違いありませんか? salaryがモジュール名でない限り、URLは書式コントローラ/アクション、つまりratechart/get-for-ratechartであり、salary/ratechart/get-for-ratechartではありません。 – Chinmay

+0

salaryはモジュール名です。 – Tanmay

+0

コンソールにエラーがあるかどうかを確認します。 –

答えて

1

ご覧いただきありがとうございます。registerJs()をご覧ください。あなたのjs構文が間違っています。これを使用してください。

<?php 

$script = <<<EOD 
    $(window).load(function(){ 
    $.get(
    'index.php?r=salary/ratechart/get-for-ratechart', 
    { rateid : 1 }, 
    function(data){ 
     alert(data); 
     var data = $.parseJSON(data); 
    } 
); 
}); 
EOD; 

$this->registerJs($script); 
?> 
+0

ありがとうございます。完璧に動作します。 – Tanmay

関連する問題