除非用户单击按钮,否则HTML表单的默认值为空



为了简单起见,我们采用以下形式:

<form>
Title: <?php echo $title; ?><input type="text" name="title" value="">
</form>

$title变量包含书籍的标题。在本例中,输出为:

Title: The Hobbit <empty form field>

其想法是,空字段允许用户在单击Submit或将书名复制到字段中时更改书名。

问题是,我不知道如何创建"复制到字段"按钮。

此外,该表单有多个标题字段,每个字段都有问题的选项,因此理想情况下,页面不会重新加载,否则用户永远无法同时修改所有标题。

有人能给我指一个正确的方向吗?理想情况下,我不会使用javascript,而是严格使用php/html。

为什么不默认在value属性中写入标题?

<form>
Title: <input type="text" name="title" value="<?php echo $title; ?>">
</form>

您可以使用css让input元素看起来像一个普通的Text,但在:focus上,它通过设置一个典型的边界来"转移"到输入。

pro是:每个输入元素都有默认值,所以如果用户发送表单,所有值都存在。

但是,要注意转义字符。

<form method="post">
    Title: <?php echo $_POST['title']; ?><input type="text" name="title[]" value="<?php echo $_POST['title']; ?>">
    <input type="submit" value="Change Value">
</form>

如果您有多个字段,则需要在标题行周围为每个循环放置一个,并且底部只有一个提交按钮,并且名称字段需要是一个数组。

 <?php $title="Some Title"; ?>
  <form method="post">
   Title: <?php echo $title; 
    <input type="hidden" name="title_name" value="<?php echo $title; ?>">
    <input type="text" name="title" value="<?php if (isset($_POST['title_name'])){echo $_POST['title_name'];}?>">
    <input type="submit" value="Change Value">
 </form>
<form>
    Title: <input type="text" name="title" value="<?= @$_POST['title'] ?>">
</form>

相关内容

  • 没有找到相关文章

最新更新