簡體   English   中英

使用從ajax響應創建的變量填充表

[英]Populate table with variable created from ajax response

我有一個填充有數據的表,然后需要使用該數據來運行第二個查詢。 我正在使用jquery數據表,這些是您看到的函數,它們使我能夠從表中獲取所有內容。 因此,例如,我從這樣的第四列中獲取一個整數,然后使用該數字來運行json響應查詢:

var cells = [];
var rows = oTable.fnGetNodes();
for( var i=0;i<rows.length;i++)
        {
            var grabsku = $j(rows[i]).find('td:eq(3)').text();
            grabsku = grabsku.substring(0, 6) + "-0" + grabsku.substring(7, grabsku.length - 4);
            s7url = 'http://jsonquery.com/' + grabsku  + '?req=exists,json';        

      $j.ajax({
        url: s7url,
        dataType: 'jsonp'
        });
       }

通過該ajax請求,json返回1或0,然后我可以根據返回的內容形成正確的信息。

function s7jsonResponse(response)
        {
        var s7img = sku;
        s7img = '<img src="http://imageserver.com/is/image/' + s7img.substring(0, 6) + "-0" + s7img.substring(7, s7img.length - 4) + '">';
         x = response["catalogRecord.exists"];  
             z = x == "0" ? "NO IMG" : s7img;
             console.log(z);
        }

控制台現在顯示了我想要的z變量(圖像路徑或NO IMG)。 我的問題是將其從控制台中移出並實際上又回到表中。 我想發生的是,隨着每個響應的出現,用z變量替換表中的td。 我試圖將其放在jsonResponse中,但無法正常工作。 在這種情況下(td:eq(2)) ,如何遍歷表並將每個單元格替換為從該查詢返回的變量z

需要創建一個函數來執行ajax,您可以將行索引和包含數據查詢字符串的URL作為參數傳遞給ajax。 因為您知道單元fnUpdate引,所以一旦從ajax返回數據,您就可以調用fnUpdate在ajax成功的情況下使用新數據和行索引

var cells = [];
var rows = oTable.fnGetNodes();
for (var i = 0; i < rows.length; i++) {
    var grabsku = $j(rows[i]).find('td:eq(3)').text();
    grabsku = grabsku.substring(0, 6) + "-0" + grabsku.substring(7, grabsku.length - 4);
    s7url = 'http://jsonquery.com/' + grabsku + '?req=exists,json';
    var rowIndex = i;
    doAjax(s7url, rowIndex)
}



function doAjax(url, rowIndex) {
    $j.ajax({
        url: s7url,
        dataType: 'jsonp',
        success: function(repsonse) {

            var s7img = sku;
            s7img = '<img src="http://imageserver.com/is/image/' + s7img.substring(0, 6) + "-0" + s7img.substring(7, s7img.length - 4) + '">';
            x = response["catalogRecord.exists"];
            z = x == "0" ? "NO IMG" : s7img;
            console.log(z);
        /* do fnUpdate here using new data and rowIndex and you know the cell index already*/
        }



    });
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM