0

在使用 Jquery 对 vb.net 服务器端代码进行 ajax 调用后,我需要在 AJAX 调用成功时重新加载整个页面。

这是我的客户端 AJAX 调用..

$("#ButtonSave").click(function () {

//convert gridview to JSON
var jsonData = new Array();
$.map($("table[id*=Gridview1] tr"), function (item, index) {
    if ($(item).find("input[type=text]").length > 0) {
        jsonData[index] = new Object();
        jsonData[index].charge = $(item).find("input[type=text][id*=txtCharge]").val();
        jsonData[index].produce = $(item).find("input[type=text][id*=txtProduce]").val();         
        jsonData[index].weight = $(item).find("input[type=text][id*=txtWeight]").val();
        jsonData[index].feet = $(item).find("input[type=text][id*=txtFeet]").val();
        jsonData[index].orderNumber = $(item).find("input[type=text][id*=txtOrderNumber]").val(); 
        jsonData[index].comments = $(item).find("input[type=text][id*=txtComments]").val();
    }
});

var jsonStringData = JSON.stringify(jsonData);

var jqxhr = $.ajax({
    url: "Correction.aspx",
    type: "POST",
    timeout: 10000,
    data: "jsonData=" + jsonStringData
})
.error(function () {
    alert('Error');
})
.success(function (data) {
    alert('Success');
});

});

4

2 回答 2

0

您使用了错误的 ajax 调用您无法将其分配给变量并且您发送的数据不正确

var jqxhr = $.ajax({
    url: "Correction.aspx",
    type: "POST",
    timeout: 10000,
    data: "jsonData=" + jsonStringData
})
.error(function () {
    alert('Error');
})
.success(function (data) {
    alert('Success');
});

用这个

 $.ajax({
    url: "Correction.aspx",
    type: "POST",
    timeout: 10000,
    data: {jsonData: jsonStringData}
})
.error:(function () {
    alert('Error');
})
.success:(function (data) {
   window.location.reload(true);

});
于 2012-10-15T04:38:08.900 回答
0

或代替使用重新加载使用

     window.location.reload(true);

您可以制作隐藏按钮并成功调用 $("your button").Click(); 它会刷新你的页面

    $("#<%= btnrefresh.ClientID %>").Click();

我总是使用这种技术并且工作完美

于 2013-03-21T05:32:13.723 回答