在MVC中进行数据库查询后重新加载页面js

时间:2015-04-29 14:43:47

标签: javascript jquery model-view-controller

我有这样的剧本:

$(document).ready(function () {
    $('#requestTable').DataTable(
        {
            aoColumns: [
            { mDataProp: "DateStart", sTitle: "Date Start" },
            { mDataProp: "DateEnd", sTitle: "Date End" },
            { mDataProp: "Approved", sTitle: "Approved" },
            { mDataProp: "Data", sTitle: "Employee" },
            { mDataProp: "Position", sTitle: "Position" },
            { mDataProp: "", sTitle: "" }
            ],
            columnDefs: [{
                targets: 'no-sort',
                orderable: false
            }]
        });

    $('button.accept-button').click(function () {
        var id = $(this).attr('data-id')        
        $.ajax({
            type: "POST",
            url: "/TableRequest/AcceptRequest",
            data: { 'id': id },
            success: function (msg) {
            }
        });
        location.reload(true);
    });
    var tempId;
    $('button.decline-button').click(function () {
        tempId = $(this).attr('data-id')
        $("#dialog").dialog()
    });
    $('button.ok-request').click(function () {
        var message = $('textarea#commentForDecline').val();

        $.ajax({
            type: "POST",
            url: "/TableRequest/DeclineRequest",
            data: { 'message': message, 'id': tempId },
            success: function (msg) {
            }
        });
        $("#dialog").dialog('close');
        $('textarea#commentForDecline').val('');
        location.reload(true);
    });
}); 

正如您所看到的,我在发布Ajax查询后重新加载页面。但有没有办法在此之后检查Db和刷新页面的变化(调用Action)?所以Db的变化很晚,我想检查一下。

1 个答案:

答案 0 :(得分:1)

您可以在成功后重新加载页面,并从后端操作返回您要检查的数据以及重新加载后

success: function (data) {
    console.log(data);
    if (data.somekey === "somevalue"){
        location.reload(true);
    } else {
        //don't reload show me some erros
    }

}