用户动态添加文本框时,文本框中的echo值

echo value from the textbox while textbox added dynamically by user

本文关键字:文本 echo 动态 添加 用户      更新时间:2023-09-26

我想显示用户点击提交后输入的文本框中的值。

在页面中,我添加了一个按钮"add TEXTBOX",用户可以自己添加最多10个文本框的文本框。

这是我当前的代码

$(document).ready(function() {
  var counter = 2;
  $("#addButton").click(function() {
    if (counter > 10) {
      alert("Only 10 textboxes allow");
      return false;
    }
    var newTextBoxDiv = $(document.createElement('div')).attr("id", 'TextBoxDiv' + counter);
    newTextBoxDiv.after().html('<label>Textbox #' + counter + ' : </label>' + '<input type="text" name="textbox' + counter + '" id="textbox' + counter + '" value="" >');
    newTextBoxDiv.appendTo("#TextBoxesGroup");
    counter++;
  });
  $("#removeButton").click(function() {
    if (counter == 2) {
      alert("System required at least one.");
      return false;
    }
    counter--;
    $("#TextBoxDiv" + counter).remove();
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<form action="<?php $_PHP_SELF ?>" method="post">
  <div id='TextBoxesGroup'>
    <div id="TextBoxDiv1">
      <label>Textbox #1 :</label>
      <input type='textbox' id='textbox1' name="textbox1">
    </div>
  </div>
  <input type='button' value='Add Button' id='addButton'>
  <input type='button' value='Remove Button' id='removeButton'>
  <br/>
  <input type="submit" name="submit" id="submit">
</form>

现在,当用户使用php点击提交按钮时,我想显示文本框中的所有值。

这个for循环在我点击提交后没有显示任何内容

<?php
    if(isset($_POST['submit'])) {
        for($i = 1; $i< 10; $i++)
        {
            if(isset($_POST['textbox'+$i]))
            {
                $obj = $_POST['textbox'+$i];
                echo $obj;
            }
        }
   }
?>

有没有一种方法可以让php检查文本框是否存在,或者检查当前表单中有多少文本框?

要使用php检查文本框是否存在,请使用:

if(isset($_POST['textboxn']))
{
}

您还可以在一个循环中检查每个文本框

for($i = 0; i< 10; i++)
{
    if(isset($_POST['textbox'+i]))
    {
    }
}

将其替换为以下表单标签

<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post"> 

对于迭代文本框,使用循环

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    for($i = 1; $i <= 10; $i++)
    {
        if(isset($_POST['textbox'+$i]))
        {
        }
    }
}