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 に答える