2016-11-01 1 views
1

これは私の質問の開発です:stackoverflowです。 これは私のアプリのscreenchotです: Screenshootjquery/yii2を使用してテーブルの行の入力テキストに値を設定します

選択したときに、私はこの

$.get("/index.php?r=kasir%2Ftransaction%2Fget-price-item&id=" +$(this).val(), function(data){ 
    $(this).closest("tr").find(".harga-jual").val(data.price.harga) 
    }); 

私のような3番目の列を更新します 、私は最初の列(項目)でドロップダウンリストを持って、参照してください。目標は、行自体にhargaの列を設定する必要があります。 したがって、選択された最初の行の選択オプションでは、最初の列のちょうど最初の列に が更新されます。

これをjqueryでどのように選択できますか?

ありがとうございました。

+0

あなたはデータfを確認し、AJAX呼び出しが成功したかどうかを確認、/index.php?r=kasir/transaction/get-price-item&id= ...エンコードせずに試すことができますrom ajaxは期待どおりです。 – CNKR

+0

はい、ajaxが動作しています。私はconsole.log(data)でデバッグしています。私はaowとしたいhtml要素を選択することはできません。 –

答えて

1

$(this)$.get()にあると思います。 AJAX呼び出しの外で$(この)の参照を保存し

$("item1").on('change', function() { 
    var $this = $(this); 
    $.get("/index.php?r=kasir%2Ftransaction%2Fget-price-item&id=" +$(this).val(), function(data){ 
    console.log("harga:"+ $this.closest("tr").find(".harga-jual").length); 
    $this.closest("tr").find(".harga-jual").val(data.price.harga) 
    }); 
}); 
0

次のコードのようにAJAXで使用しようuser3498863のおかげで、

は、今では正常にこのように動作するコード:Yiiの方法で :

<?= 
            $form->field($modelTools, "[{$indexTools}]item_id")->label(false)->dropDownList(ArrayHelper::map(ItemLayanan::find()->all(), 'id', 'nama_item'), ['prompt' => 'Select item', 
             'class' => 'item_id', 
             'onchange' => '' 
             . 'var $this = $(this);' 
             . 'var $row = $this.closest("tr");' 
             . '$.post("' . Url::to(['get-price-item', 'id' => '']) . '" + $(this).val(), function(data) { 
                $row.find(".harga-jual").val(data.price.harga); 
              });'] 
            ) 
            ?> 

おかげで再び

関連する問題