当前位置: 首页 > 面试题库 >

jQuery AJAX表单提交不起作用

丁雅惠
2023-03-14
问题内容

我正在尝试通过AJAX提交表单,而不是使用常规的POST提交。HTML只是一个标准格式,method="post"我的jQuery代码如下:

jQuery.noConflict();
jQuery(document).ready( function($) {
    var $form = $('#default_contact');

    $form.submit( function() {
        $.ajax({
            type: 'POST',
            url: $form.attr( 'action' ),
            data: $form.serialize(),
            success: function( response ) {
                console.log( response );
            }
        });

        return false;
    });
});

(基于此答案)

我从Submit函数返回false,但是表单仍在提交,我不知道为什么。没有收到任何Firebug错误。


问题答案:

如果html设置正确,则您的代码可以正常工作。这是我的测试html(使用php),因此您可以将其与自己的进行比较。

<?php
if (!empty($_POST)) {
  die("<pre>" . print_r($_POST, true) . "</pre>");
}
?>
<html>
<head>
  <title>ajax submit test</title>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
    jQuery.noConflict();
    jQuery(document).ready(function ($) {
        var $form = $('#default_contact');

        $form.submit(function () {
            $.ajax({
                type: 'POST',
                url: $form.attr('action'),
                data: $form.serialize(),
                success: function (response) {
                    alert(response);
                }
            });

            return false;
        });
    });
</script>      
</head>
<body>
  <form id="default_contact" action="formsubmit.php" method="post">
    <input type="hidden" value="123" name="in1" />
    <input type="hidden" value="456" name="in2" />
    <input type="submit" value="send" />
  </form>
</body>
</html>


 类似资料:
  • 我让troulbe通过jsp页面上的ajax函数将path参数输出到servlets doput方法。 我的使用Ajax的jsp页面: 我有get和post方法,因为它们在form action和method属性中以常规方式发送到servelt。 就我所知,Put和delete只能通过ajax或JQuery来完成,我似乎无法理解。 我已经在邮递员身上测试了这个方法,它非常有效。 我真的被困在这个问

  • 问题内容: 我正在尝试仅在成功验证后提交表格。验证适用于必填项,但不适用于ng-minlength 表单输入无效,但仍在提交表单。 http://jsfiddle.net/pMMke/9/ 我究竟做错了什么。 我不想使用提交按钮禁用方法。 问题答案: 这是您做错的事情:您正在混合使用两个概念Angular验证器 和 HTML5验证器。 在 需要 HTML5验证,例如,规定: 如果存在,它指定提交表

  • 我无法获取“remember-me”复选框值(不存在获取400个必需的布尔参数“remember”) HTML表单

  • 问题内容: 我的页面上有一个下拉菜单,在这里。抱歉,格式化-引导程序: 当我直接加载并且下拉列表初始化时,此代码可以正常工作,但这不是我需要代码工作的方式。 用户开始; 此页面从用户那里收集一堆数据 并将 其 返回 给。 一旦用户选择执行操作,此代码将运行: ajax调用正常工作,并将从中返回的数据加载到div中。它按预期传递数据。加载到DIV 时唯一不起作用的是下拉菜单。我需要了解我在做错什么导

  • 表单提交不起作用。当我在弹出窗体中单击更新按钮时,页面将重新加载,数据不会更新 这是脚本$(文档)。关闭('click','updatepro')$(文件)。在('click','updatepro',function()上{ }); 这是我的控制器公共功能更新(请求$Request,$id){ 这是route::post('/update','GetdataController@update')

  • 我从一个简单的表单提交示例开始 下面是文件 spring-servlet.xml testlink.jsp: 控制器: blank.jsp 我的jsp页面位于 tradelc\src\main\webapp\jsp\testlink.jsp tradelc\src\main\webapp\jsp\blank.jsp 当我给出http://localhost:8181/trade LC/JSP/te