2013-05-07 57 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

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