首页 > 解决方案 > 单击按钮时如何更改表单元素中的操作属性?

问题描述

在此代码中,我有 3 个按钮更新、返回、删除,当我单击其中任何一个时,$page 应分配给表单元素中的 action 属性,并且发布数据应基于单击的按钮。

<form action='<?php echo $page; ?>.php' method='post'>
<?php
if(isset($_POST['update'])) {
    $page='book_update';
}
if(isset($_POST['delete'])) {
    $page='book_delete';
}
if(isset($_POST['back']))
{
    $page='patientpage';
}
?>

标签: phphtml

解决方案


在 PHP 中,您只能访问浏览器在请求中已经发送的数据。

如果要检测单击了哪个按钮,可以为按钮命名,如下所示:

<form action="/page.php" method="post" id="form_id">
  <input type="submit" value="edit" name="action">
  <input type="submit" value="delete" name="action">
  <input type="submit" value="back" name="action">
</form>

单击按钮后,表单被提交,您将在 PHP 中找到$_POST['action'].

如果要在表单提交之前action根据按钮动态修改属性,则必须使用javascript,例如document.getElementById('form_id').action = 'something-else.php';


推荐阅读