-1

当用户单击“提交”时,我使用标准的 jQuery 验证插件来验证表单。

验证表单后,我希望它将数据发布到数据库并显示“成功”消息。

验证部分工作正常,但我无法让我的两个命令发生。我确定我遗漏了一些明显的东西。

这是我的代码:

<script type="text/javascript">

$("#formname").validate({
        submitHandler: function (form) {

            $.post('https://www.custom.api.url.com', $(this).serialize(), function () {
                    success.show();
                    $('input[type=text]').val('');

                }
            });

</script>

好的,拿两个。这个也不起作用:

<script type="text/javascript">

$(document).ready(function(){
                  var success = $('.success');

                           $("#formname").validate( {
                           submitHandler: function(form) {

                           $.post('https://www.custom.api', $(this).serialize(), function(){
                           success.show(); $('input[type=text]').val('');                


                                  });
                             });
                  });

</script>
4

1 回答 1

0

这是您的有效代码。看起来这也是你的主要问题,无效的语法。

<script type="text/javascript">
$(document).ready(function(){
    $("#formname").validate({
        submitHandler: function(form) {
            $.post('https://www.custom.api.url.com', $(form).serialize(), function () {
                success.show(); //Undefined
                $('input[type=text]').val('');
            });
        }
    });
});
</script>

$(this).serialize()也必须替换为$(form).serialize().

然后另外success是未定义的,所以会有另一个错误。但我不确定到底success应该是什么。

您应该使用浏览器控制台来获取有关 javascript 错误的通知。要验证您的 javascript,您还可以使用jsHint

于 2013-10-12T15:24:16.357 回答