2

我试图在以前用 AJAX 加载的内容中加载内容。我把代码

与负载():

jQuery("#contentpage").on("submit", "#loginform", my = function() {
    $("#contentpage").load("/logincheck.jsp");
    alert("this is required ");
});

使用 $.ajax():

jQuery("#contentpage").on("submit", "#loginform", function() {

    $.ajax({
        url: '/logincheck.jsp',
        success: function(data) {
            $('#contentpage').html(data);
        }
    });

    alert("this is required ");
});

#loginform是一个加载了以前的 AJAX 请求的 HTML 表单,我成功地访问了.on()函数。

但问题是当我提交时#loginform 没有放置alert('this is required')框然后刷新整个页面。里面#contentpage的内容也没有改变。

但是,如果我对 put 做同样的事情,它的工作正常,内容会在不刷新整个页面的情况下alert("this is required")加载。#contentpage

这是时间问题吗?Ajax 请求需要时间并且是异步的?如果我错了,请纠正我。

4

2 回答 2

5

你试过这个吗?

        jQuery("#contentpage").on("submit","#loginform",my=function(event){ 
             event.preventDefault();
             $("#contentpage").load("/logincheck.jsp");
             alert("this is required ");
        });

这至少应该阻止页面刷新,并且还可以解决其他问题。祝你好运!

于 2012-09-08T15:52:10.220 回答
-1

异步键是默认的true,应该将其更改为false

$.ajax({
    async:false,
    url: '/logincheck.jsp',
    success: function(data) {
        $('#contentpage').html(data);
    }
});
于 2016-12-16T06:13:53.257 回答