2013-03-26 62 views
0

我在輪詢一個URL,該URL查詢JMS隊列中的某些信用卡授權結果。當URL返回成功時,我想將數據寫入指定的DIV。輪詢URL並將結果寫入DIV

我的大部分經驗都是在Java後端。這是我迄今爲止設法完成的,但它不起作用。即使Chrome和Firebug顯示數據正確返回,我的DIV中也沒有顯示。

我在這裏犯了一個簡單的錯誤嗎?

<script type="text/javascript"> 
     function doPolling() { 
      $.ajax({ 
       url: './poll', 
       dataType: 'json', 
       type: 'get', 
       success: function(jdata) { 
        console.log(jdata); 
        var jdata = $.parseJSON(jdata); 

        if (jdata.pollerStatus == 'poll-again' && jdata.pollerMessage == 'ok') { 
         setTimeout(function() { 
          doPolling(); 
         }, 15000); 
        } else if (jdata.pollerStatus == 'done' && jdata.pollerMessage == 'success') { 
         $("#creditcard_results").text(jdata); 
        } else if (jdata.pollerStatus == 'done') { 
         if (jdata.pollerMessage == 'timed out') { 
          $('#submitorder').prop('disabled', false); 
         } else if (jdata.pollerMessage == 'payment-error') { 
          $('#submitorder').prop('disabled', false); 
         } else { 
          $('#submitorder').prop('disabled', false); 
         } 
        } 
       } 
      }); 
     } 
    </script> 

    <div id="creditcard_results"></div> 
+0

你打算在div中打印JSON? 如果您嘗試使用: $(「#creditcard_results」)。text(jdata.pollerStatus); 而不是$(「#creditcard_results」)。text(jdata); 它會添加到您的div文本「完成」? – 2013-03-26 19:40:21

+0

我認爲你的代碼永遠不會到達'$(「#creditcard_results」)。text(jdata);' – 2013-03-26 19:50:32

+0

@MohammadAdil可能是正確的,將console.log()放入你的條件中以查看失敗的位置 – aguynamedloren 2013-03-26 20:59:18

回答

0

在這條線:

$("#creditcard_results").text(jdata); 

jdata是一個對象。 .text()函數只需要一個返回字符串的字符串或回調函數。