Jam*_*mes 48
<input type='submit' value='Submit' onclick='this.form.action="somethingelse";' />
Run Code Online (Sandbox Code Playgroud)
或者您可以从表单外部修改它,使用javascript正常方式:
document.getElementById('form_id').action = 'somethingelse';
Run Code Online (Sandbox Code Playgroud)
Nat*_*dly 27
如果您只需要支持现代浏览器,有一种简单的方法:在提交按钮上添加如下formaction="/alternate/submit/url"属性:
<form>
[fields]
<input type="submit" value="Submit to a" formaction="/submit/a">
<input type="submit" value="submit to b" formaction="/submit/b">
</form>
Run Code Online (Sandbox Code Playgroud)
它也适用于<button>标签.
问题是旧版本的IE(<10)和Android浏览器(<4.0)不支持它.因此,如果您需要支持旧浏览器,那么现有的JS答案可能会更适合您.
更多信息:http://www.wufoo.com/html5/attributes/13-formaction.html
小智 18
您还可以onSubmit在表单标记中设置属性的值.您可以使用Javascript设置其值.
像这样的东西:
<form id="whatever" name="whatever" onSubmit="return xyz();">
Here is your entire form
<input type="submit">
</form>;
<script type=text/javascript>
function xyz() {
document.getElementById('whatever').action = 'whatever you want'
}
</script>
Run Code Online (Sandbox Code Playgroud)
请记住,onSubmit优先级高于action属性.因此,无论何时指定onSubmit值,都将首先执行该操作,然后表单将移至操作.