php - jquery 验证多个提交按钮无法识别第二个提交操作

标签 php jquery forms jquery-validate

我正在使用 jquery 验证插件来验证并提交页面上的表单,该页面有多个提交按钮来运行不同的功能。

一个提交按钮使用 $post 方法运行,而另一个则使用标准操作方法。

(如果我的术语有误,请关注我)

我遇到的问题是,如果我使用第一个按钮提交表单,然后使用第二个按钮重试,它会尝试在第二次提交时再次运行第一个操作。

这是我的代码,希望能让事情变得更清楚......

<form id="myForm" action="add.php">
<input type="submit" id="myfunction" />
<input type="submit"​ id="add" />
​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​<input type="text" name="myvalue" />
</form>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

和我的验证代码...

$("#myForm input[type=submit]").click(function(e) {
        if (e.target.id == 'myfunction') {
            $("#myForm").validate({
                submitHandler: function(form) {
                    $.post('myfunctionpage.php', $("#myForm").serialize(), function(data) { });
                }
            });
        } else if (e.target.id == 'add') {
            $("#myForm").validate({
                rules: {
                    name: {
                        required: true,
                    }
                }
            });
        }

    });​

最佳答案

为什么不将代码分成两段?

$("#myfunction").click(function(e) {

            $("#myForm").validate({
                submitHandler: function(form) {
                    $.post('myfunctionpage.php', $("#myForm").serialize(), function(data) { });
                }
            });
        } 

$("#add").click(function(e) {
            $("#myForm").validate({
                rules: {
                    name: {
                        required: true
                    }
                }
            });
        }

关于php - jquery 验证多个提交按钮无法识别第二个提交操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10475535/

相关文章:

javascript - jQuery 帮助检查异步行为是否完成

php - 无法将唯一 session 值从一个页面传输到另一个页面

PHP 关闭 php.ini 中的警告不起作用

javascript - 当用户输入内容时动态生成文本框

php - 阻止表单值两次插入 MySQL 数据库

browser - 在浏览器中刷新页面而不重新提交表单

forms - 使用 SQL Server 2008 的 VBA 表单

php - 将数组元素插入数据库字段MYSQL

php - Lumen Routes 显示 404,root route 除外

javascript - 如何防止函数在调整大小时创建新的事件窗口堆栈