即使在使用javascript和php提交按钮后,获取所有输入字段并在文本字段中保留值

时间:2015-03-11 13:56:48

标签: javascript php html

我有多个输入字段和随机输入名称,我想要实现的是获取在文本字段中输入的数据,然后单击提交按钮,输入的数据将保留。

示例代码:

  for($i=0;$i<$count1;$i++) {
        echo '<input type="text" name="'.$random1.'" value=""/>';
  }

  for($j=0;$j<$count2;$j++) {
        echo '<input type="text" name="'.$random2.'" value=""/>';
  }

  for($k=0;$k<$count3;$k++) {
        echo '<input type="text" name="'.$random3.'" value=""/>';
  }
  echo '<input type="submit" name="submit" value="submit"/>'

这里的问题是我不知道'输入名称'是什么。我希望用户输入的值保留在此文本字段中。我该怎么办?如果您不知道“输入名称”是什么?

2 个答案:

答案 0 :(得分:0)

您可以使用隐藏的输入来记录名称吗?像这样:

for($i=0;$i<$count1;$i++) {
    $value=getValueFor("section1-$i");
    echo '<input type="text" name="'.$random1.'" value="'.$value.'"/>';
    echo '<input type="hidden" name="section1-'.$i.'" value="'.$random1.'"/>';
}

for($j=0;$j<$count2;$j++) {
    $value=getValueFor("section2-$j");
    echo '<input type="text" name="'.$random2.'" value="'.$value.'"/>';
    echo '<input type="hidden" name="section2-'.$j.'" value="'.$random2.'"/>';
}

for($k=0;$k<$count3;$k++) {
    $value=getValueFor("section3-$k");
    echo '<input type="text" name="'.$random3.'" value="'.$value.'"/>';
    echo '<input type="hidden" name="section3-'.$k.'" value="'.$random3.'"/>';
}

其中getValueFor应该是一个检查你从GET或POST得到什么的函数。例如:

function getValueFor($x){
    $res = "";
        if (isset($_REQUEST[$x])){
            $name=$_REQUEST[$x];
            $res = $_REQUEST[$name];
        }
    return res;
}

答案 1 :(得分:0)

这应该有效:

if (isset($_POST['random'])) {
   foreach ($_POST['random'] as $key => $randomName) {
       ${"random" . $key . "value"} = $randomName;
   }
}

for($i=0;$i<$count1;$i++) {
                echo '<input type="text" name="'.$random1.'" value="'.$random1value.'"/>';
                echo '<input type="hidden" name="random[]" value="'.$random1.'"/>';
          }

          for($j=0;$j<$count2;$j++) {
                echo '<input type="text" name="'.$random2.'" value="'.$random2value.'"/>';
                echo '<input type="hidden" name="random[]" value="'.$random2.'"/>';
          }

          for($k=0;$k<$count3;$k++) {
                echo '<input type="text" name="'.$random3.'" value="'·$random3value.'"/>';
                echo '<input type="hidden" name="random[]" value="'.$random3.'"/>';
          }
          echo '<input type="submit" name="submit" value="submit"/>'`enter code here`;
 }