Php 如何在页面上重新填充复选框?
我有一点奇怪/独特的情况,我目前正在寻找一种方法来“重新填充”我页面上的复选框 首先介绍一下页面/应用程序的工作原理 1.)状态1:您可以获得简单的搜索表单。输入第一个或最后一个或状态等,点击提交。 它查询数据库并发回同一页面(?mode=results) 在主容器DIV中,我循环遍历返回的记录,并创建(回显)一个具有特定表格布局的表,以解析每个记录/行的值(名称、日期、ID#等) 如果我有5条从DB返回的记录,我将循环并创建5个表,每个表都使用记录/行中的唯一数据填充 在这些表中的每一个表中,我都创建了数据库记录/行中的数据。我还创建/添加了几个复选框 使用一些jQuery和on$(document).ready,我为所有这些复选框列出了onClick事件。因此,单击时,我从复选框中获取一些数据以及一些家长信息,并执行以下操作: a、 )我在舞台上创建/添加了另一个元素Php 如何在页面上重新填充复选框?,php,checkbox,populate,Php,Checkbox,Populate,我有一点奇怪/独特的情况,我目前正在寻找一种方法来“重新填充”我页面上的复选框 首先介绍一下页面/应用程序的工作原理 1.)状态1:您可以获得简单的搜索表单。输入第一个或最后一个或状态等,点击提交。 它查询数据库并发回同一页面(?mode=results) 在主容器DIV中,我循环遍历返回的记录,并创建(回显)一个具有特定表格布局的表,以解析每个记录/行的值(名称、日期、ID#等) 如果我有5条从DB返回的记录,我将循环并创建5个表,每个表都使用记录/行中的唯一数据填充 在这些表中的每一个表中,
b、 )对外部.php脚本进行Ajax调用,这样我就可以用我构建的数组更新会话(收集所有用户检查/输入) 我在JS/jQuery中构建了这个数组,并使用Ajax调用将这些数据输入到我的PHP会话中(任何人都知道不使用这个external.PHP脚本来更新会话变量的方法,请告诉我!) 到目前为止,要重新设置上限:没有“表单”(标记),只需在多个表中选中复选框即可。实际上,没有一个按钮(提交)事件一次将所有复选框数据发布到任何位置。每次单击(或取消单击)复选框时,我都会更新会话数组。如果/当用户准备“签出”(因为缺少更好的术语)(离开页面转到另一个页面),会话数据/数组是“最新”的,并且该数据可以在任何后续页面上使用 到目前为止,上面发布的一切都很好 我的问题是:如果用户想返回此主页并显示所有复选框,我必须重新填充所有这些复选框,有什么好的、简单的/优雅的解决方案 我认为我唯一的方法是在主页加载时检查这个会话数组是否存在(这意味着这是一次重新访问,不是第一次),并尝试循环通过这个数组,以某种方式在我的阶段上找到正确的表,然后检查复选框ID 通常使用jQuery来遍历DOM,而不是PHP? 用PHP切换复选框怎么样
有什么好办法吗?我真的看不出你有什么问题。我概述:
- 您有一个包含来自数据库的多个
的页面(1行=1
) - 在这些表格中有复选框
- 单击复选框时,执行ajax调用以在会话中保存单击的复选框
- 您的问题是:当页面上再次出现使用时,如何重新填充复选框
和复选框时,测试它们是否处于会话中:
<input type="checkbox" <?php if (!empty($_SESSION['blabla'][$myCurrentCheckboxID])) echo 'checked'; ?> />
谢谢你的建议。。这就是我最终的成功之处(到目前为止)
函数sessionCheck($recordID,$checkBoxID){
对于($r=0;$r
我的项目的用法如下:
<?=sessionCheck($row["id"] ."-A","Testimonial History") ?>
文字的神圣之墙。。。请尽量将此问题简化为您正试图解决的问题。问题“已发布”,但是如果没有背景摘要,您可以将其置于上下文中。(无论如何,谢谢)那是我目前的思考过程。。但是checkboxID并不是唯一的。。。它们是那张桌子上独一无二的。。。但是其他的桌子完全一样。。唯一的区别是表具有唯一的ID。。。根据您的建议,它不会打开/选中id为(比如):article的任何/所有复选框吗?更不用说它是我会话中保存的数组了。。不仅仅是单个变量/值。。我在数组中又添加了3个值,希望它们能帮助我最终找到如何重新选中前面的复选框。。这是我正在构建的阵列结构。。并最终将此数组保存到我的会话中..userPicks.push({recordid:resultsID,orderid:orderid,checkboxid:TargetTeckBox,casename:casename,fullname:fullname,trialdate:trialdate,citystate:citystate,原告:原告,itemsordered:itemsordered=[{name:itemOrdered,price:itemPrice}]});我觉得我需要“向后”做这件事还是什么?运行数组,然后设置复选框。。与其在解析时尝试检查checked状态(如在您的示例中),否则我将有一些运行for循环的长php代码段..等等。。在每个复选框元素中?
<?=sessionCheck($row["id"] ."-A","Testimonial History") ?>