2014-02-25 162 views
-1

不工作我有一個aspx頁面內的形式,這種形式需要一個文件輸入,並將其職位,以viddler服務器。異步Ajax調用鉻

將文件發佈到viddler服務器後,在backgorund中,我對代碼隱藏頁面上的webmethod執行ajax調用,此webmethod調用viddler服務器並返回該特定上載的上載進度。

這些Ajax調用在Firefox工作正常,但無法在Chrome中工作,他們甚至沒有即將在鍍鉻網絡面板,沒有這些功能(成功,錯誤或完全)是射擊。

我在這裏失蹤了嗎?

這裏是我的Ajax調用:

function checkProgress() { 
     tokenValue = document.getElementById("uploadtoken").value; 
     var y = "{ token: 'token' }"; 

     var jsonText = JSON.stringify({ token: tokenValue }); 

     $.ajax({ 
      type: 'POST', 
      url: "video_viddlerUpload.aspx/CheckProgress", 
      data: jsonText, 
      contentType: 'application/json', 
     dataType: 'json', 
     cache: false, 
     async: true, 
     success: function(json) { 

       var uploadProgress; 
       uploadProgress = eval('(' + json.d + ')'); 


        }, 
       error: function (xmlHttpRequest, textStatus, errorThrown) { 


      alert('There was an error uploading your file. Please try again.'); 
      }, 
       complete:function() { 
        alert('complete'); 
        } 
    }); 

    } 

請幫助我。我會非常有幫助。

+0

'var jsonText = JSON.stringify({token:tokenValue});'沒有道理.. –

+0

它與var jsonText =「{」token「:」u04d88「}」相同。該webmethod需要一個名爲「令牌」的輸入參數 – user3351001

+0

你曾經調用你的函數checkProgress()'?另外,我不認爲你需要明確地「串化」你的POST數據。 – Knelis

回答

0

想這個問題是cache:falsejQuery Doc說 - 「設置高速緩存false將只與HEADGET請求正常工作,它的工作原理是追加」 _={timestamp}「到GET參數並不需要其他類型的參數。當一個POST就是已經被要求由GET一個URL提出的要求,除了在IE8「。你正在做一個POST請求。