-2

我有这个带有 jQ​​uery AJAX 的 .aspx 网站。

当我没有按钮时,它可以正常工作。

当我用按钮包装 AJAX 调用时,它不起作用。没有错误,没有成功警报,没有 AJAX 请求,控制台中没有任何内容。它只是停止。我不知道为什么:(

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>

    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>

    <script>
        $(document).ready(function () {
            $("#button1").click(function () {
                $.ajax({
                    url: 'WebForm1.aspx',
                    success: function (data) {
                        $('#comments').html(data);
                        console.log("success");
                    }
                });
            });
        });
    </script>

</head>
<body>
    <form id="form1" runat="server">
    <div>

        <button id="button1">get recent comments</button>

        <div id="comments" runat="server">

        </div>

    </div>
    </form>
</body>
</html>
4

1 回答 1

3

默认情况下,按钮将提交表单并发布。您需要在 jQuery 中使用以下命令来防止这种行为preventDefault()

$("#button1").click(function (event) {
    event.preventDefault();

    ... etc ...
});

阻止 jQuery 传递给您的函数的 click 事件的默认行为应该使其行为符合预期。


http://api.jquery.com/event.preventDefault/

于 2013-11-08T00:09:51.680 回答