在另一个页面上填充 ajax 成功数据不起作用



我正在从database调用数据,并希望填充控件上的数据。因此,为此,我正在使用如下所示Ajax网络方法

function getAllRecordForCurrentRow(val) {
        debugger;
        var row = val.parentNode.parentNode;            
        var ID = row.cells[7].innerText.trim();
        $.ajax({
            url: "VSATApprover.aspx/GET_DATA_FOR_CURRENT_RECORD_APPROVER",
            dataType: "json",
            type: "POST",
            contentType: 'application/json; charset=utf-8',
            data: JSON.stringify({ ID: ID }),
            async: true,
            processData: false,
            cache: false,
            success: function (r) {
                //alert(r.d.SAP_ID);
                $('#txtSapId').val([r.d.SAP_ID]);
                $('#txtContactdetails').val([r.d.CONTACT_DETAILS]);
                window.open('VSATUpdateForm.aspx', '_blank');
            },
            error: function (xhr) {
                alert('Error while selecting list..!!');
            }
        })
    }

我在这里的问题是

需要填写success函数下的值在另一个页面上,这样它就不起作用了。那么我应该如何填写值

您只需要将这些值设置为某些localStorage,然后在下一页上,您需要从localStorage获取它 document.ready .请考虑以下示例:

第 1 页 Ajax JS

success: function (r) {
         localStorage.setItem('SapID',r.d.SAP_ID);
         localStorage.setItem('ContactDetails',r.d.CONTACT_DETAILS);
         window.open('VSATUpdateForm.aspx', '_blank');
}

现在,既然您有它localStorage,您可以在下一页js下面写下:

第 2 页 JS

$(document).ready(function(){
   //get it from localStorage
   var sapid=localStorage.getItem('SapID'); 
   var contdetails=localStorage.getItem('ContactDetails');
   //set it to textboxes
   $('#txtSapId').val(sapid);
   $('#txtContactdetails').val(contdetails);
});

就是这样。

最新更新