You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让表单内的两个按钮分别跳转至不同的PHP页面?

解决方案:实现两个按钮跳转不同页面

单个HTML表单确实只能设置一个action属性,要实现两个按钮分别提交/跳转到不同页面,这里提供几种实用方案:

方案1:拆分两个独立表单(无JS依赖)

这是最稳妥的方案,把两个按钮分别放在独立表单中,各自配置对应action:

<body>
<h1>Home</h1>

<p>Register Profile:</p>
<form action="profile_submit.php" method="post">
  <p>
    <input type="submit" name="Register" id="Register" value="Submit" />
  </p>
</form>

<p>Update Profile:</p>
<form action="profile_update.php" method="post">
  <p>
    <input type="submit" name="Update" id="Update" value="update" />
  </p>
</form>
</body>

兼容性拉满,不需要依赖JavaScript,适合所有场景。

方案2:JS动态修改表单action(保留单个表单)

如果必须把按钮放在同一个表单里,可以通过JavaScript在点击时动态修改表单的action属性再提交:

<body>
<h1>Home</h1>

<p>Register Profile:</p>
<form id="profileForm" method="post">
  <p>
    <input type="submit" name="Register" id="Register" value="Submit" onclick="setActionAndSubmit('profile_submit.php')" />
  </p>

  <p>Update Profile:</p>
  <p>
    <input type="submit" name="Update" id="Update" value="update" onclick="setActionAndSubmit('profile_update.php')" />
  </p>
</form>

<script>
function setActionAndSubmit(targetUrl) {
  const form = document.getElementById('profileForm');
  form.action = targetUrl;
  form.submit();
}
</script>
</body>

注意要移除原表单的action属性,由JS动态赋值。另外你原代码里的onclick="profile_update.php"是无效写法,必须通过函数处理跳转逻辑。

方案3:button元素直接跳转(无需提交表单)

如果只是单纯跳转页面、不需要提交表单数据,可以用<button>结合JS实现:

<body>
<h1>Home</h1>

<p>Register Profile:</p>
<p>
  <button onclick="window.location.href='profile_submit.php'">Submit</button>
</p>

<p>Update Profile:</p>
<p>
  <button onclick="window.location.href='profile_update.php'">update</button>
</p>
</body>

这种方式更简洁,适合无表单数据提交的场景。

内容的提问来源于stack exchange,提问作者Skyleer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 01:41:05