繁体   English   中英

如何在表单提交后更改 HTML 表数据值

[英]How to change a HTML table data value after form submission

我有一个表格。

<form action="form.php" method="POST" name="form1" id="f1">

在这个表格上是一个名字的输入。

<input type="text" class="form-control" id="n1" placeholder="Name" required>

用户输入他们的姓名并单击提交,然后表单.php 将启动,并将此姓名通过电子邮件发送到 email 地址。

$name = $_POST['n1'];

如果成功,用户将通过以下方式重定向到另一个页面;

header("Location: /anotherpage.html");

到目前为止,一切正常。

此页面上是一个 HTML 表,其中包含一个表格数据单元格;

<td id="table1"></td>

问:我想要做的是当用户被重定向到这个页面时,他们提交的名称出现在表格数据单元格中。

我尝试了几件事都没有成功。

在 HTML 侧;

value="<?php echo $name;?>" & value="<?php echo $_POST['n1'];?>"在 td 标签内。

<?php echo $name;?> & <?php echo $_POST['n1'];?>在 td 标签之间。

& 在重定向 header 之后的 PHP 侧;

getElementById('n1').value = $name;

getElementById('n1').value = $_POST['n1'];

有没有办法做到这一点?

期待听到任何人的声音

亲切的问候

您可以使用PHP使用header通过url发送名称...

// check the submission of your form using the name set in the submit button...
if(isset($_POST['submit'])){
    // DO NOT SKIP ON SANITIZING YOUR INPUTS!!!!!
    // This example is very basic, I am not showing how to sanitize inputs
    $fname = filter_var(strip_tags($_POST['fname'], FILTER_SANITIZE_STRING));
    $lname = filter_var(strip_tags($_POST['lname'], FILTER_SANITIZE_STRING));
    // do your email stuff
    // after you have done all your other code, send the name 
    // key/value pair over the url using the header...
    header("Location: someotherpage.html?fname=".fname ."&lname=".lname);
}

将 url 上的值发送到someotherpage.html页面后,您可以使用URLSearchParams搜索 url 以获取key参数的配对值。 window.location.search => URL的查询字符串部分。 这包括问号,以及后面的所有内容。 使用.get()使用它们的key获取 url 的参数。 然后,您可以使用 javascript 和dataset属性 => element.dataset.fname = firstName来分配它们。

let parameters = new URLSearchParams(window.location.search);
let firstName = parameters.get('fname');
let lastName = parameters.get('lname');

let div = document.getElementById('data');

div.dataset.fname = `${firstName} ${lastName}`;

someotherpage.html上返回以下内容:

数据集属性 html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM