我有两个表和一个表单内的输入,或多或少是这样的:
表代码(两个表是相同的,只是调用的表略有不同):
<table cellpadding="0" cellspacing="0" class="paperTable searchResultContainer">
<thead>
<tr>
<th>Name</th>
<th>ID</th>
<th>Company Reg.</th>
<th>Postcode</th>
</tr>
</thead>
<tbody>
<?php while ($row = $items->fetch_assoc()) : ?>
<tr class="row" data-address1="<?php echo $row['address1']; ?>"
data-address2="<?php echo $row['address2']; ?>" data-address3="<?php echo $row['address3']; ?>"
data-county="<?php echo $row['address4']; ?>" data-postcode="<?php echo $row['postcode']; ?>"
>
<td><?php echo (strlen($row['name']) > 0 ? $row['name'] : '-'); ?></td>
<td><?php echo (strlen($row['id']) > 0 ? $row['id'] : '-'); ?></td>
<td><?php echo (strlen($row['company_reg_no']) > 0 ? $row['company_reg_no'] : '-'); ?></td>
<td><?php echo (strlen($row['postcode']) > 0 ? $row['postcode'] : '-'); ?></td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
我的输入是一个简单的单行复选框,询问以上内容是否与搜索不匹配。
我想要做的,如果用户单击表行,它会发布 <tr>
的 .data() 属性标记到表单中的下一步,即另一个页面。
我尝试过隐藏输入的想法,但因为它处于输入共享相同名称的 while 循环中,所以输入的值将是循环中的最后一个,因为它是最后设置的。我也尝试过ajax:
$.ajax({
data: $(this).data(),
type: 'post',
url: 'stepDos.php',
success: function(data)
{
window.location.replace('/path/to/stepDos.php');
}
});
当我 var_dumped $_POST 它返回空时,它不起作用。
我还尝试了 $.post 函数:
$.post('/path/to/stepDos.php', {data: data}, function(ev)
{
window.location.replace('/path/to/stepDos.php');
});
再次无济于事 - 我缺少什么吗?
谢谢
最佳答案
正如我在评论中提到的,您不必制作一个包含所有数据的单一表单。相反,您可以循环中每行 1 个表单。
这会给你预期的结果!
关于javascript - 使用 jquery 将数据传递到新页面 $_POST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43493646/