2013-11-28 155 views
1

當用戶按下entre時,數據將被保存到數據庫中。從數據庫檢索數據而不刷新頁面

阿賈克斯

$('td.edit').keydown(function(event){ 


    arr = $(this).attr('class').split(" "); 
    var clientid=document.getElementById("client").value; 
    account_id=document.getElementById("account_id").value; 


    if(event.which == 13) 
    { 

$.ajax({ type: "POST", 
         url:"clientnetworkpricelist/update.php", 
         data: "value="+$('.ajax input').val()+"&rowid="+arr[2]+"&field="+arr[1]+"&clientid="+clientid+"&account_id="+account_id, 
         success: function(data){ 

         $('#CPH_GridView1_Status').append(data); 
         $('.ajax').html($('.ajax input').val()); 
         $('.ajax').removeClass('ajax'); 
               }}); 
           } 

           } 

的Html

<td id="CPH_GridView1_Status'.$rows['net_id'].'" class="edit2 status '.$rows["net_id"].' "><img src="image/'.$rows["status"].'f.png" /></td> 

成功後,我想從數據庫中檢索數據,並將其放置在適當的TD(在同一行中點擊TD的)我成功檢索數據,但不能檢索正確的td

+0

使用'方面: ''選擇''.ajax()'發送co ntext指向標識該行的「成功」函數。 – Barmar

+0

您只需將其顯示在AJAX調用的結果頁面中,並從AJAX調用發回的數據中獲取它。 –

+0

$(this)'指針應該仍然指向被點擊的td,那麼爲什麼你不使用它來將數據重新設置爲生成的事件td – dreamweiver

回答

2

哪一排你想要加載數據? 改變:

$('#CPH_GridView1_Status').append(data); 

$('#CPH_GridView1_Status'+arr[2]).append(data); 
+0

謝謝你的答案,它的工作,但如果我再次添加它顯示更多比一個數據它沒有清除以前的數據,你可以告訴我如何清除之前的數據,當新的數據是addes – arok

+0

使用html而不是追加:$('#CPH_GridView1_Status'+ arr [2])。 –

+0

請看這個問題http://stackoverflow.com/questions/20262515/how-to-assign-the-retrieved-data-to-the-different-td和請給我你的建議謝謝 – arok

1

第一附加數據之前清除當前 '' 使用

$('#CPH_GridView1_Status'+arr[2]).empty(); 

,然後將數據追加

$('#CPH_GridView1_Status'+arr[2]).append(data); 
相關問題