2017-04-22 77 views
0

不起作用此代碼工作完全在桌面瀏覽器,工程還對移動應用的Ajax代碼在移動設備

function submitSN() 
{ 
    var data = []; 

    var eles1 = document.getElementsByClassName('chip'); 

    for (var i = 0 ; i < eles1.length ; i++) 
    { 
     data.push(eles1[i].innerText.substring(0,eles1[i].innerText.length-5)); 
    } 

    profile.skills = data; 
    profile.uid = uid; 

     $.ajax({ 
     url: '/postprof', 
     type:'POST', 
     data: profile, 
     dataType: 'json', 
     headers: new Headers({ "Content-Type": "application/json" })}); 
     $("body").html("<h1 style='text-align:center;padding:4%;'>Done, Return to your messenger now!</h1>"); 
} 

,但它不會發送阿賈克斯在移動瀏覽器調用,我指這段代碼正確

$.ajax({ 
    url: '/postprof', 
    type:'POST', 
    data: profile, 
    dataType: 'json', 
    headers: new Headers({ "Content-Type": "application/json" })}); 

此代碼適用於正常的桌面瀏覽器,但不適用於我的手機瀏覽器,如何解決此問題?

+0

你有沒有網址? –

+0

看看這個網站,也許它會幫助你解決你的問題https://www.tutorialspoint.com/ajax/ajax_browser_support.htm –

+0

Phone Gap?您需要在您的服務器頁面上有COORS Access,因爲該應用程序不在您的域中。 – PHPglue

回答

1

你不需要定義任何頭,jQuery的AJAX的默認設置是處理JSON反正。

這裏是一個非常基本的要求POST使用jQuery AJAX是發送一個簡單的對象,你不需要定義headersdataTypecontentType

 
let custom_object = { 
    name: 'Ahmed', 
    age: 22 
} 

$.ajax({ 
    type: 'POST', 
    url: 'YOUR_URL', 
    data: custom_object, 
    success: function(){ 
     cosnole.log('Done: ', e) 
    }, 
    error: function(e){ 
     console.log('ERROR! ', e); 
    } 
}); 

有默認值的是:

  • headers{}
  • dataTypeIntelligent Guess (xml, json, script, or html)
  • contentTypeapplication/x-www-form-urlencoded; charset=UTF-8

源:http://api.jquery.com/jquery.ajax/

+1

它運作良好,我接受這個答案 –

0

失敗線大概是這樣的:

headers: new Headers({ "Content-Type": "application/json" })}); 

你可能會在其上不具有Headers構造一個iPhone/iOS設備/測試的Webkit。

你可以閱讀更多關於它here

+0

是的它是正確的100%,我測試從Iphone IOS –

0

頁眉API僅適用於特定的瀏覽器。

看看在browser compatibility

試試這個: contentType: "application/json",

$.ajax({ 
    url: '/postprof', 
    type:'POST', 
    data: profile, 
    dataType: 'json', 
    contentType: "application/json", 
}); 
+0

不幸的是沒有工作太 –

+0

你試過BrowserStack或iPhone調試器? –

+0

我在正常的Safari瀏覽器上測試,這裏的網址來檢查它 http://urlgone.com/3bad68/ –