将所选值从一个页表传递到另一个页表
Pass selected values from one page table to another page table
大家好
第 1 步:我有一个 html 主页,其中包含 3 个按钮(按钮 1、按钮 2 和按钮 3)和一个包含 10 条记录的表格。
第 2 步:用户单击(单击)以从 10 条记录中选择 3 条记录,然后单击按钮1
步骤3:然后按钮1 html页面应打开一个表格,其中包含在步骤3中选择的2条记录
步骤4:打开按钮2和按钮3主页的步骤相同
您能否建议如何使用jquery或 JavaScript 还是任何其他语言?
可能有一种更简单的方法可以做到这一点,但这有效。查看示例,了解其工作原理,您应该能够从此处继续您的项目。
首先,将数据从Page1发送到Page2的方法是使用表单并发布数据。
为此,(1) 遍历复选框,(2) 将项目保存到数组,(3) 将数组转换为 JSON(即文本),(4) 构造包含字符串化数组的表单,(5) 将表单附加到文档中,以及 (6) 提交表单
jsFiddle 演示
页1.html:
var thejson, cars = [];
$('#mybutt').click(function(){
$('table tbody tr input:checked').each(function(idx,el){
if ( this.checked ){
//alert( $(el).closest('tr').find('td:nth-child(1)').text() );
//alert( idx );
cars[idx] = $(this).closest('tr').find('td:nth-child(1)').text();
}
});
//alert( cars.length );
/* Note: replace " with | b/c the " will interfere with value="" */
thejson = JSON.stringify(cars).replace(/"/g, '|');
//alert( thejson );
//Now, create a form and send it to your next page:
var frm = '<form id="myForm" action="page2.html" method="post">';
frm += '<input type="text" name="myJSON" value="'+thejson+'" />';
frm += '</form>';
$('body').append(frm);
//$('#myForm').submit(); //NOTE -- ENABLE THIS WHEN READY
}); //END mybutt.click
页2.html:
<?php
//Step1: receive the POSTed data
$json = $_POST['myJSON']; //note: spelling and capitalization is CRITICAL
$json = str_replace('|', '"', $json); //turn it back into valid JSON
$arr = json_decode($json);
//Step 2: construct the HTML
$out = '<div style="width:200px;padding:30px;background:lavender;border:1px solid blue;">';
foreach ($car in $arr){
$out .= 'Car: ' .$car. '<br>';
}
$out .= '</div>';
//Step 3: display the HTML
echo $out;
笔记:
(1)在page1.html
中,为了将json字符串保存到输入表单中,我们将"
替换为|
。这样做的原因是因为value="["car1","car2","car3"]"
只会引起问题! 这不会引起问题:value="[|car1|,|car2|,|car3|]"
(2) 在 page2.html
中,您会收到 POSTed json 数组,并使用该数据执行您需要执行的任何操作。
在这个例子中,我有 6 个复选框(而不是 10 个),如果选中其中一个,我会显示该复选框的值会覆盖表单。
<form id="foo">
<input type="checkbox" name="box" value="a" />a
<input type="checkbox" name="box" value="b" />b
<input type="checkbox" name="box" value="c" />c
<input type="checkbox" name="box" value="d" />d
<input type="checkbox" name="box" value="e" />e
<input type="checkbox" name="box" value="f" />f
<button onclick="myscript();">Button1</button>
</form>
<script>
function myscript()
{
var checkboxes = document.getElementsByName('box');
var selectedelements = "";
for(var i=0; i<checkboxes.length; i++)
{
if(checkboxes[i].checked)
{
selectedelements = selectedelements + checkboxes[i].value;
}
}
document.getElementById('foo').innerHTML = selectedelements;
}
</script>
相关文章:
- Adobe acrobat每隔30页插入一个空页面-javascript
- jQuery 数据表 在页面上导航时,在分页表上重置行的数据
- 将所选值从一个页表传递到另一个页表
- HTML多页表单显示隐藏部分,保留表单数据
- 使用angularjs的多页表单子模块
- 使用数据寻呼机在 asp.net 分页 - 下一个,上一个按钮
- Javascript(Adobe Acrobat XI)从表单第一页的输入答案填充第二页表单
- 引导分页下一个上一个不起作用
- Symfony 3 分页表单数据
- 多页表单提交
- 分页表的动态索引
- 添加上一页下一个导航到列表项淡入/淡出循环
- 分页“上一个”和“下一个”错误
- 如何删除上一页 .上一个对象?Javascript .prev().remove();.
- 使用jQuery进行Javascript分页(下一个项目/上一个项目)
- 如何打开Firefox web扩展选项页作为一个选项卡,从大约:插件分开
- 没有弹出窗口显示分页表
- 在angularjs中,点击一个链接后给下一页传递一个ID
- 如何从数据库分页表
- 混合内容页:请求一个不安全的样式表错误