处理一个表单有多个提交按钮

来源:互联网 发布:网络高级工视频 编辑:程序博客网 时间:2024/06/12 23:06

在做到表单的提交的时候,如果是一个按钮提交的话,对应一个action。只需要将form表单属性method=”post” action=”action路径”。

可是如果是多个按钮,如何将一个表单与多个方法关联呢?

思路是这样的:先不指定表单的action,让action属性为"",method="post",为你的提交按钮全部替换为普通按钮,给它们都加上onclick事件,注意这里每一个按钮的onclick方法是一样的,只是传递的参数不一样,这里的参数只是起到标记是哪一个按钮的用。

最后根据onclick里的方法传递的参数不同,可以判断是来自哪一个按钮的消息,再为表单设置方法并提交。

这里有个案例(发布文章和将文章保存到草稿箱):

<form id="myFrm" action="" method="post">文章标题:<input name="articleTitile"/><br/>文章内容:<textarea name="articleContent"><br/><input type="button" value="发布文章" onclick="test(1)"/><br/><input type="button value="保存到草稿箱" onclick="test(2)"/> </form>

<script type="text/javascript">function test(val){    //判断参数    if(val==1){  //发布文章的方法        var url = "去到发布文章的Action";        var params = $("#myFrm").serialize();        //异步处理        $.post(url,params);    }    if(val==2){  //保存到草稿箱        var url = "去到草稿箱的Action";        var params = $("#myFrm").serialize();        //异步处理        $.post(url,params);    }}</script>




原创粉丝点击