【发布时间】:2011-07-15 10:00:34
【问题描述】:
我正在创建一个多页表单,现在我正在向 Stack 专家寻求帮助;
在此页面上,用户可以在页面上添加更多输入字段 [type=text]
所以基本上有一个“孩子姓名”的单数输入,然后是一个添加按钮,如果他们有多个孩子,则允许用户添加更多孩子。
我的表单允许您前后移动,表单会记住输入的内容,我如何让 jQuery 和 php 记住表单字段已添加,因此当用户重新访问页面时它们不会隐藏?
【问题讨论】:
我正在创建一个多页表单,现在我正在向 Stack 专家寻求帮助;
在此页面上,用户可以在页面上添加更多输入字段 [type=text]
所以基本上有一个“孩子姓名”的单数输入,然后是一个添加按钮,如果他们有多个孩子,则允许用户添加更多孩子。
我的表单允许您前后移动,表单会记住输入的内容,我如何让 jQuery 和 php 记住表单字段已添加,因此当用户重新访问页面时它们不会隐藏?
【问题讨论】:
你可以添加输入:
$('form').append('<input>',{type: 'text', name: 'input_name'})
您可以使用 php $_SESSIONs 保存表单数据的先前部分
表格示例:
在 php 中你会得到所有的 post(或 get)值:
$_POST = array ('name1' => 'me', 'name2' => 'you' )...
然后您可以将它们保存在会话中:
$_SESSION['lastpostedvalues'] = $_POST;
或类似的东西。
记得在 php 文件的顶部有session_start()
【讨论】:
如果有帮助就试试这个
html代码
<span>
<span id="childs"></span>
<input type="text" id="testid" />
<input type="submit" id="submit" value="Add" />
</span>
jQuery ---
$(document).ready(function(){
$('#submit').click(function(){
$('#childs').append('<a href="">'+$('#testid').val()+'</a><br />');
$value=$('#testid').val();
$.get('somePHPCodewhichaddsToSession.php',{
data:$values
},function(data){
//some staff after the session is add
});
});
});
/*PHP code to add the sessions*/
if(isset($_GET['data'])){
$_SESSION['AnyName']=$_GET['data']; //this could be an array to hold all the childern names
if(isset($_SESSION['AnyName']))
echo true; //handle this return in your ajax call oncomplete callback
else
echo false;
}
/* PHP code to dispaly the childrens*/
//get the array from the session
if(isset($_SESSION['AnyName']){
get the values and display or do something with them
$values= $_SESSION['AnyName']
}
** 确保格式化 html 以满足您的需求
【讨论】: