2016-04-05 4 views
0

私はさまざまな価格の変更があり、それぞれの場所に反映する必要があるという問題があります。ただし、1つのエントリにのみ影響します。私は以下のコードを投稿します。必要なコードの他の部分についてはお気軽にお問い合わせください。私はCodeIgniterのとAJAXを使用していますAJAXのデータをループして、その中に特定の値を格納する方法

function showOffer(id_offer) { 
    $.ajax({ 
     url: '<?php echo base_url('admin/order/getOffer'); ?>', 
     type: 'POST', 
     data: { o_id: id_offer }, 
     success: function(data) { 
      var obj = $.parseJSON(data); 
      $('#oid').val(obj[0].oid); 
      $('#select2-chosen-2').val(obj[0].offer_code); 

      var product_id = obj[0].product_id; 
      var free_product_id = obj[0].product_id;   
      $('.offer_price_' + product_id).val(obj[0].offer_sales_price); 
      $('#freeQty_' + free_product_id).val(obj[0].quantity); 
      $('#listmodal1').modal('hide'); 
     } 
    } 
}); 
} 
<td title="Reason for price change: <?php echo !empty($product->product_message)?' '.$product->product_message.'"':''; ?>"> 
    <input style="width:100%; text-align:right; padding-right:5px;" type="text" name="paid_product_price[]" id="offer_price" class="price offer_price_<?php echo $counter; ?> paidShowMessage" value="<?php echo $price; ?>"> 
</td> 
それは、すべての製品は現在、それだけでTR-> TD

すべてのヘルプは非常に

理解されるであろういずれかの値が設定し、データベースからフェッチされて影響を及ぼすべき

+0

このコードは動作していますか? ':?<?php echo base_url(' admin/order/getOffer '); ?> ',? – Kamal

+0

はい、動作しています。ここでの唯一の問題は、正しい値を返すことです。私は4つの製品を持っていて、それはただ1つの製品に表示されます –

答えて

0

まず第一に、モデルとビューの分離が増えると思っています。 意味:UIを更新する別のコントローラにイベントをスローするデータを取得するサービスが必要です。 詳しくは、JavaScriptのpubサブメカニズムをご覧ください。

第2に、変更されたセルのリストを返すようにajax呼び出しを変更できます。

function showOffer(id_offer) { 
    $.ajax({ 
     url: '<?php echo base_url('admin/order/getOffers'); ?>', 
    type:'GET', 
     data: {}, 
     success: function(data){ 
       publish('dataChanged', data); 
      } 
     } 
    }); 
} 

subscribe('dataChanged', function(data)) { 
     var offers = data.offers; 

     for (int i = 0 ; i < offers.length ; i++) { 
      // update cell in table 
     } 
}); 
+0

公開するものは何ですか?それはすべての –

+0

publish()とsubscribe()の中に変更があったときに特定の行でのみ変更され、pub/subメカニズムに関連する2つのメソッドそれはイベントを投げる/キャッチする - それはコントローラとモデルを分離するのに役立ちます - 詳細については、Googleをしてください。 – chenop

+0

申し訳ありません。 –

関連する問題