1

我在两个不同的场景中使用一个表单 - 创建和编辑。

我做类似的事情

<?php
if($status == 'new')
    echo '<button id="btnSubmit" type="submit" class="btn">Submit!</button>';
else
    echo '<button id="btnEdit" type="submit" class="btn">Edit!</button>';
?>

我想在我的 javascript 端实现的是验证表单并根据按下的按钮调用正确的 Web 服务。我正在使用此处找到的 jQuery 验证插件。

Javascript

$('#myForm').validate({
    submitHandler: function(data) {
      $.ajax({
        url: "service1.php"
        ...... other AJAX stuff ..........
      });
    }
}

$('#btnSubmit').click(function() {
    // call service1.php
});

$('#btnEdit').click(function() {
    // call service2.php
});
4

2 回答 2

0

验证方法可以是单个函数,您可以设置一个标志(例如,您将在编辑页面中获取一个 id)来标识编辑页面或添加页面。这样您就可以检查提交处理程序中的标志并将表单提交到需要提交的位置。我对PHP不熟悉,希望对您有所帮助。

于 2013-10-07T13:24:10.043 回答
0

根据 Marikkani 的建议,我已经实现了以下内容并且它有效。希望它可以帮助使用 Javascript 和 PHP 遇到类似问题的人。

在我的表单文件中,我使用了一个隐藏的 div 来存储type (new or edit). <input type="hidden" id="type" value="<?php echo $type; ?>" />

此后,在我的 javascript 文件中,我检索此值并在调用相应的 ajax 之前进行检查。

$('#resForm').validate({
    submitHandler: function(form) {
        var type = $('#type').val();

        if(type == 'new') {
            $.ajax({
                url: "service1.php"
                .... other AJAX stuff
            });
        } else { // type is edit
            $.ajax({
                url: "service2.php"
                .... other AJAX stuff
            });
        }
    }
});
于 2013-10-08T02:29:42.403 回答