在我的 c# MVC4 应用程序中,我正在使用两个局部视图。Partial View 1 位于 ID 为 Partial_Analysis 的 div 中,Partial View 2 位于 ID 为 Display_Average 的 div 中。每个视图都包含一个 datatables.net 数据表。当在部分视图 1 中的表中选择一行时,会生成一个 jquery ajax 帖子,导致部分视图 2 使用更新的数据表刷新,该数据表显示基于在部分视图 1 中进行的行选择的结果。
<script type="text/javascript" charset="utf-8">
    $(document).ready(function () {
        $('.rowselection').click(function (e) {
            var tdata = $('#form1').serialize();
            $.ajax({
                type: "POST",
                data: tdata,
                url: "Home/PartialAverage",
                success: function (result) { success(result); }
            });
        });
        function success(result) {
            $("#Display_Average").html(result);
        }
    });
</script>
单击特定按钮时,会刷新局部视图 1。
<script type="text/javascript" charset="utf-8">
    $(document).ready(function () {
        $('#ChangeName').click(function (e) {
            var tdata = $('#form1').serialize();
            var origname = $('#NameDiv').find('input[name="Name"]').first().val();
            var newname = $('#NameDiv').find('input[name="updatedName"]').first().val();
            $.ajax({
                type: "POST",
                data: {
                    mCollection: tdata,
                    Name: origname,
                    updatedName: newname
                },
                url: "Home/ChangeName",
                success: function (result) { success(result); }
            });
        });
        function success(result) {
            $("#Partial_Analysis").html(result);
        }
    });
</script>
在刷新局部视图 1 后,我希望第二个局部视图也刷新。我试过这个导致无限循环。
<script type="text/javascript" charset="utf-8">
    $(document).ready(function () {
        $('#Partial_Analysis').ajaxSuccess(function (e) {
            var tdata = $('#form1').serialize();
            $.ajax({
                type: "POST",
                data: {
                    mCollection: tdata,
                },
                url: "Home/PartialAverage",
                success: function (result) { success(result); }
            });
        });
        function success(result) {
            $("#Display_Average").html(result);
        }
    });
</script>