根据您按下的按钮将信息发送到不同页面的表单

Posted

技术标签:

【中文标题】根据您按下的按钮将信息发送到不同页面的表单【英文标题】:Form to send information to different pages according to which button you push 【发布时间】:2014-02-17 06:27:52 【问题描述】:

所以我有一个带有下拉列表和两个按钮的表单。我希望能够从下拉列表中选择一些内容并将该信息发送到两个不同的页面,具体取决于我按下的按钮。

    <form action="(edit_user.php or create_user.php)" method="POST">
        <select id="dropdown" name="users" size="30">
            <option value="user1">Joe</option>
            <option value="user2">Jane</option>
            <option value="user3">Snuffy</option>
            <option value="user4">Mahabirsinghmatos</option>
        </select>
        <input type="submit" value="Create User" />
        <input type="submit" value="Edit User" />
    </form>

我想根据我按下的按钮将表单信息发送到这两个 php 文件之一。

我该怎么做呢?

【问题讨论】:

【参考方案1】:

为提交按钮命名:

<input type="submit" name="task" value="Create User" />
<input type="submit" name="task" value="Edit User" />

让处理您的action 的 PHP 脚本确定要运行它的文件。

例如

if (!isset($_POST['task'])) 
    # Some default action
 elseif ($_POST['task'] == "Edit User") 
    include('edit_user.php');
 elseif ($_POST['task'] == "Create User") 
    include('create_user.php');
 else 
    # Some error state

【讨论】:

【参考方案2】:

您可以在提交按钮onclick-events 中更改表单的action-属性:

为表单和按钮添加一些 id:

 <form action="(edit_user.php or create_user.php)" method="POST" id="theForm">
        <select id="dropdown" name="users" size="30">
            <option value="user1">Joe</option>
            <option value="user2">Jane</option>
            <option value="user3">Snuffy</option>
            <option value="user4">Mahabirsinghmatos</option>
        </select>
        <input type="submit" value="Create User" id="btnCreate"/>
        <input type="submit" value="Edit User" id="btnEdit"/>
    </form>

脚本:

var form = document.getElementById('theForm');
document.getElementById('btnCreate').onclick = function() 
    form.action='create_user.php';

document.getElementById('btnEdit').onclick = function() 
    form.action='edit_user.php';

【讨论】:

以上是关于根据您按下的按钮将信息发送到不同页面的表单的主要内容,如果未能解决你的问题,请参考以下文章

以另一种形式将文本发送到文本框而不创建新窗口

织梦cmsf表单提交到邮箱 织梦表单发送到邮箱 织梦自定义表单发邮箱

如何使用 Hibernate、Spring MVC 将数据从单个表单发送到多个数据库表

将字符串从数据库从一个表单发送到另一个表单

每次使用VBA在excel 2010中保存一个不同名称的文件[关闭]

如何让按钮根据按下的行显示不同的视频?