Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在页面刷新时保留随机生成的HTML文本字段的值?_Javascript_Php_Html - Fatal编程技术网

Javascript 如何在页面刷新时保留随机生成的HTML文本字段的值?

Javascript 如何在页面刷新时保留随机生成的HTML文本字段的值?,javascript,php,html,Javascript,Php,Html,我在运行时创建HTML文本,就像下面的代码一样 <?php session_start(); for(var i=1;i<=10;i++) { ?> <div id="mainDiv<?php echo $i; ?>"> <input type="text" id="myText<?php echo $i; ?>"> <button type="button" id="myButto

我在运行时创建HTML文本,就像下面的代码一样

<?php
session_start();
for(var i=1;i<=10;i++)
{ 
?>
    <div id="mainDiv<?php echo $i; ?>">
        <input type="text" id="myText<?php echo $i; ?>">
        <button type="button" id="myButton<?php echo $i; ?>" onclick="myButtonClicked()">Click Me</button>       
    </div>
<?php
}
?>


您可以使用
locaStorage
api在页面刷新后通过存储/访问/从本地存储保留用户输入。
setItem()
getItem()
分别用于存储和从本地存储获取项目

示例

html将由php创建

<input type="text" id="text1" value="" />
<button type="button" id="myButton1" onclick="myButtonClicked('text1')">Click Me</button>

<input type="text" id="text2" value="" />
<button type="button" id="myButton1" onclick="myButtonClicked('text2')">Click Me</button>       
//like this other input and button will be created.

我不知道这是否能帮到你
但您可以通过提交给php_self的表单实现您想要的

<?php

//create blank array for storing text box values
for($i=1;$i<=10;$i++){
   $textValue[$i]='';}

//if page reached via submission of button, store posted text box values in array
if(isset($_POST['myButton'])){
   for($i=1;$i<=count($textValue);$i++){
      $textValue[$i]=$_POST['myText'.$i];}}

?>

 <!--create form that submits to same page-->
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" enctype="multipart/form-data" name="main">

<?php

//loop creates text boxes and buttons while getting text box default values from $textValue Array
for ($i=1;$i<=count($textValue);$i++){ 
   echo '<div id="mainDiv'.$i.'">
   <input type="text" id="myText'.$i.'" name="myText'.$i.'" value="'.$textValue[$i].'"/>
   <button id="myButton'.$i.'" name="myButton" value="myButton'.$i.'">Click Me</button>    
</div>
';}

?>

</form>


因此,当您刷新页面时,这些值将重置为默认值。您希望在用户在文本字段中输入一些文本时存储这些值,以便下次用户刷新页面时显示这些值。您需要做的是在用户每次输入值时向服务器发送带有值的ajax请求,或者将值存储在cookie中,以便在页面刷新后检索。@JoshuaKissoon-cookies是更好的选择,但我是否需要在循环中创建它们?否,因为textfields最初没有值,当用户在文本字段中输入一些文本时,您需要创建它们;可能每次他们输入字符时,另一个选项可能是
localStorage
@SumanBogati-你能用一些代码片段详细说明一下吗?
<?php

//create blank array for storing text box values
for($i=1;$i<=10;$i++){
   $textValue[$i]='';}

//if page reached via submission of button, store posted text box values in array
if(isset($_POST['myButton'])){
   for($i=1;$i<=count($textValue);$i++){
      $textValue[$i]=$_POST['myText'.$i];}}

?>

 <!--create form that submits to same page-->
<form action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" enctype="multipart/form-data" name="main">

<?php

//loop creates text boxes and buttons while getting text box default values from $textValue Array
for ($i=1;$i<=count($textValue);$i++){ 
   echo '<div id="mainDiv'.$i.'">
   <input type="text" id="myText'.$i.'" name="myText'.$i.'" value="'.$textValue[$i].'"/>
   <button id="myButton'.$i.'" name="myButton" value="myButton'.$i.'">Click Me</button>    
</div>
';}

?>

</form>