【问题标题】:Jquery ajax call using json vb.net使用 json vb.net 的 Jquery ajax 调用
【发布时间】:2012-10-15 04:34:28
【问题描述】:

使用 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');
});

});

【问题讨论】:

    标签: jquery ajax call


    【解决方案1】:

    您使用了错误的 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);
    
    });
    

    【讨论】:

    • 没用。感谢您的回复。
    • @user1733547 看到编辑后的答案我也想在成功后丢失:
    • 没有错误。它不会刷新整个页面。这是场景...我在 Correction.aspx 中有 GridView1 和 Gridview2。 GridView1 用于显示数据库中的数据。我正在更新或删除记录的 Gridview2。因此,当我单击 GridView1 中的任何记录时,它会在 Gridview2 中填充数据,并且在更改 Gridview2 中的某些字段后,我点击了“保存”按钮,然后我在 Jquery AJAX 调用上方调用。因此,一旦 AJAX 调用完成,我需要使用 Gridview1 中显示的更新值加载 Correction.aspx 页面。
    【解决方案2】:

    或者使用

    代替使用重新加载
         window.location.reload(true);
    

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

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

    我一直在使用这种技术并且工作完美

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 2012-12-26
      • 1970-01-01
      • 2014-09-12
      • 2011-09-06
      • 2013-11-29
      相关资源
      最近更新 更多