使用 jQuery 添加表单字段和 PHP Sessions 来记住添加的字段
Posted
技术标签:
【中文标题】使用 jQuery 添加表单字段和 PHP Sessions 来记住添加的字段【英文标题】:Use jQuery to add form fields and PHP Sessions to remember the fields were added 【发布时间】:2011-07-15 10:00:34 【问题描述】:我正在创建一个多页表单,现在我正在向 Stack 专家寻求帮助;
在此页面上,用户可以在页面上添加更多输入字段 [type=text]
所以基本上有一个“孩子姓名”的单数输入,然后是一个添加按钮,如果他们有多个孩子,则允许用户添加更多孩子。
我的表单允许您前后移动,表单会记住输入的内容,我如何让 jQuery 和 php 记住表单字段已添加,因此当用户重新访问页面时它们不会隐藏?
【问题讨论】:
【参考方案1】:你可以添加输入:
$('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()
【讨论】:
我明白了,您能否举一个从 jquery 生成的输入以及如何将其存储在 Session 中的示例? 已编辑以添加如何将帖子值放入会话中。 jquery 代码不包含表单名称或类型变量 我不知道您的表单名称是什么,哈哈。输入你自己的名字:-) 对不起,我的意思是代码中的值“名称”和“类型”,哈哈,我不是指我的表单,我的表单称为表单:D【参考方案2】:如果有帮助就试试这个
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 以满足您的需求
http://jsfiddle.net/tsegay/5VhVp/
【讨论】:
以上是关于使用 jQuery 添加表单字段和 PHP Sessions 来记住添加的字段的主要内容,如果未能解决你的问题,请参考以下文章
使用 JQuery、Ajax、PHP、Json 进行表单验证
使用 jQuery AJAX PHP 的表单不会在电子邮件中发送字段输入
如果 php 和 jQuery 选中或未选中,则在 php 中动态创建复选框值