Jquery Ajax 表单提交:多个表单 - 相同的按钮 ID

Jquery Ajax Form Submission: multiple forms - same button-id's

现在它似乎没有问题,但我想知道...假设您有多个表单(每个表单在不同的页面上),每个表单都有不同的 ID。

每个表单都有一个 ID 为 "btnSave" 的按钮。在母版页(模板)中,我将所有链接添加到 ajax-formhandling-scripts 的工作方式如下:

$(document).ready(function() {
    // ignore the submit
    $("#frmNews").submit(function() {
        return false;
    });

    // catch the click-event
    $("#btnSave").on("click", function() {
        // input control
        // ajax-request if input was ok  
    }
});

在继续构建之前,我想确定使用相同的按钮 ID 不会给我带来问题。我在这里工作不对吗?

重复 id 属性值无效 - 它们必须是唯一的。请改用 class。此外,从设计的角度来看,您应该将所有逻辑都挂在 formsubmit 事件之外。尝试这样的事情:

$(document).ready(function() {
    // ignore the submit
    $(".frmNews").submit(function(e) {
        // input control
        if (input_control_ok) {
            // $.ajax()...
        }
        else {
            e.preventDefault(); // stop form submission
        }
    });
});

.btnSave 按钮应该添加 type="submit" 属性,假设它还没有。