2013-05-07 43 views
0

這是我的PHP代碼(第1頁):爲什麼提交後不顯示附加行的數據?

 <table width="600px" id="project"> 
      <tr> 
       <td>1</td> 
       <td><textarea name="pro_1" cols="100" rows="2"></textarea></td> 
      </tr> 
      <tr> 
       <td>2</td> 
       <td><textarea name="pro_2" cols="100" rows="2"></textarea></td> 
      </tr> 
      <tr> 
       <td>3</td> 
       <td><textarea name="pro_3" cols="100" rows="2"></textarea></td> 
      </tr> 
      <input id="addbtn" type="button" name="addbtn" value="ADD"> 

使用Javascript追加行合併按鈕被點擊時:

$("#addbtn").click(function(){ 
    var num=parseInt($("#project tr:last").text()); 
     num+=1; 
      $("#project").append("<tr><td>"+num+"</td><td><textarea name='pro_"+num+"' cols='100' rows='2'></textarea></td></tr>"); 
       }); 

第2頁是最重要的頁面,從1日的所有數據頁面顯示:

<table width="600px" id="project"> 
      <tr> 
       <td>1</td> 
       <td><?php echo $_POST["pro_1"]; ?></td> 
      </tr> 
      <tr> 
       <td>2</td> 
       <td><?php echo $_POST["pro_2"]; ?></td> 
      </tr> 
      <tr> 
       <td>3</td> 
       <td><?php echo $_POST["pro_3"];?></td> 
      </tr> 
</table> 

我的問題是,附加行的數據沒有顯示在第二頁。如何使它?

+0

雖然你使用PHP,這個問題似乎是用JavaScript。因此,retag。 – Aquillo 2013-05-07 08:44:54

+0

在點擊函數中做一個'console.log(num);'或'alert(num);'來測試它的工作正常並且執行View Generated Source來查看它是否正確創建了html – Waygood 2013-05-07 08:46:54

+0

你是否想要找到這個: $(「#project tr」)。last()。children('td')。first()。text()? – 2013-05-07 09:15:08

回答

0

更改謝勝利,頁面是這樣的:

<table width="600px" id="project"> 
<?php 
    $index = 1; 
    while(isset($_POST["pro_".$index])) { 
?> 
     <tr> 
      <td><?php echo $index; ?></td> 
      <td><?php echo $_POST["pro_".$index]; ?></td> 
     </tr> 
<?php 
    $index++; 
} ?> 
</table> 
+0

更好的建議是將數組表示法用於輸入名稱。 – Barmar 2013-05-07 09:02:05

+0

的確如此。最好使用'name =「pro []」'代替,但是解決方案代碼可用 – 2013-05-07 09:05:09

+0

所以你的意思是把它改成'