要用JavaScript实现(jquery也行),向园子那样,不是在onclick属性上设置的
$(function () { $("input[type='submit']").click(function () { var text = $(this).val(); if (text == "发布") { $("#form").attr("action", "/Home/pub"); } else if (text == "存为草稿") { $("#form").attr("action", "/Home/caogao"); } else { //取消 $("#form").attr("action", "/Home/cancel"); } }) })
<form method="post" id="form"> <input type="submit" value="发布"/> <input type="submit" value="存为草稿" /> <input type="submit" value="取消" /> </form>
就这样写。input的type可以不变,用js或jquery判断一下所点击按钮的值,然后在动态的更改表单提交的action就可以了。
最简单的,三个input外面包三个form不就行了
为什么要在onclick上面设置呢。你都是三个button就ok,不要写成submit.
然后每个都不是一个方法。form的url是可以设置的。就可用作不同的from请求了啊,你想太多了。同学
用ajax,每个按钮加个function,在对应的function中使用ajax请求对应的action。
使用ajax,针对每个按钮绑定事件,不用在html里面写onclick属性
比如下面:
$(document).ready(function(){ //发布 $('#fabu').click(function(){//发布按钮id为fabu $.ajax({ url: "请求路径", data: $("表单的id").serialize(), dataType: "json", method: "post", beforeSend: function () { //do-something } }).done(function (data) { //do-something }); }); //存为草稿 $('#caogao').click(function(){//存为草稿按钮id为caogao $.ajax({ url: "请求路径", data: $("表单的id").serialize(), dataType: "json", method: "post", beforeSend: function () { //do-something } }).done(function (data) { //do-something }); }); //取消 $('#quxiao').click(function(){//取消id为quxiao //do-something }); });
点击按钮后动态修改action值