2011-08-10 61 views
0

我試圖做一個表單,將提交一個新的記錄,並自動顯示爲DIV內的主DIV和所有來自PHP while循環的結果。製作新記錄並在div中顯示它(追加到while循環)

這裏是while循環,我已經建立:

<?php 
while ($row_apps = mysql_fetch_array($result_apps)) 
{ 
    if (($row_apps['type'] == 'ar') && ($row_apps['client'] == NULL)) { 
echo '<center> 
<div id="_'.$row_apps['app_id'].'" class="tab_listing"> 
<table width="248" border="0" cellspacing="10px" cellpadding="0px"> 
    <tr> 
    <td width="100%" colspan="3"><div class="tab_listing_header">'.$row_apps['app_name'].'</div></td> 
    </tr> 
    <tr> 
    <td class="tab_listing_values"><b>App ID: </b>'.$row_apps['app_id'].'</td> 
    <td class="tab_listing_values"><b>Users: </b>'.$row_apps['users'].'</td> 
    </tr> 
</table> 
<div id="edit">Edit</div> 
<a href="#" onclick="return show_confirm('.$row_apps['app_id'].')"><div id="delete"></div></a> 
</div> 
</center><br>'; 
} 
} 
?> 

現在基本上是我需要做的是,當一個表單提交和新的記錄是我想讓它顯示一個新的數據庫「塊」完全相同,就像「塊」生活一樣。

我在想是這樣的:

$.post("create.php",{ value1:$('#value1').val(),value2:$('value2').val(),rand:Math.random() } ,function(data) 
     { 
      if(data=='yes') 
      { 
HERE I'M STUCK. 

謝謝!

回答

2

試試這個

$.post("create.php",{ value1:$('#value1').val(),value2:$('value2').val(),rand:Math.random() } ,function(data) 
     { 
      if(data) 
      { 
      $("mainDivSelector").html(data); 
      } 
); 
+0

(數據)是什麼意思?我的意思是,如果create.php只會將新記錄插入到數據庫中,它將如何在需要的位置顯示完全相同的框?或者我應該用我想要添加到列表中的實際代碼替換「是」嗎? – Ricardo

+0

data是由'create.php'頁面提供的響應,它基本上是您正在回顯的標記。 – ShankarSangoli

+0

'if(data)'將檢查非空和空狀態。如果你想檢查別的東西,你可以改變它。 – ShankarSangoli

1

數據將包含create.php返回的結果字符串,這是完全取決於你。 create.php目前做什麼?

+0

它只產生新的記錄(單個mysql查詢),然後如果它確定它返回「是」。前一個人的答案是「添加」還是隻替換#mainDivSelector中的所有當前信息? – Ricardo

+0

他在選擇器中缺少#,但.html()設置容器的內容,這意味着以前的任何內容都將丟失。你需要.append()來代替。 – alkos333