1

每次单击添加行时,我都有一个脚本将行添加到带有文本字段的表中:

<script language = "javascript">

var x = 0;

function addRow(){

    var tbody = document.getElementById(tabID).getElementsByTagName("tbody")[0];
    var row = document.createElement("tr")
    var data1 = document.createElement("td")    
    var data2 = document.createElement("td") 

    var element = document.createElement("input");
    element.setAttribute("type", type);
    element.setAttribute("name", type);
    element.setAttribute("id", "Name"+x);
    element.setAttribute("style","width:95px");

    var element1 = document.createElement("input");
    element1.setAttribute("type", type);
    element1.setAttribute("name", type);
    element1.setAttribute("id", "Address"+x);
    element1.setAttribute("style","width:95px");

    var foo = document.tbody;

    data1.appendChild(element)
    data2.appendChild(element1)

    row.appendChild(data1)
    row.appendChild(data2)
    tbody.appendChild(row)

    x++;
}
</script>

提交后如何将变量 x 的值传递给 php,以便我可以计算我应该执行多少循环?

4

3 回答 3

5

添加<input type="hidden" name="count_rows" value="0">到您的表单,在提交表单时将其值更新为行数。

于 2012-09-12T04:53:28.597 回答
2

您需要在表单中创建一个输入隐藏字段并使用 counter 的值对其进行初始化。您可以按如下方式使用javascript

 var input = document.createElement("input");
 input.setAttribute("type", "hidden");
 input.setAttribute("name", "counter");
 input.setAttribute("value", x);
于 2012-09-12T04:54:15.383 回答
0

正如Vinay已经建议的那样。利用输入元素的名称和值属性。您可以尝试以下代码片段。

<?php
if(isset($_POST['submit'])) 
{ 
    print_r($_POST);
    $counter= $_POST['counter'];   
    print_r("counter value : <b>". $counter. "</b>");

}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
   <input type="hidden" name="counter" value="5"><br>
   <input type="submit" name="submit" value="Submit Form"><br>
</form>
于 2015-08-31T10:27:25.157 回答