2011-12-13 30 views
1

目前我使用此代碼:無法獲得使用的PhoneGap和jQuery JSON結果在iPhone應用程序

<script type="text/javascript"> 

    $(document).ready(function() { 
    var url = "http://openexchangerates.org/latest.json"; 
    $.getJSON(url + "?callback=?", null,function(data) { 

     var currencies = [ "USD", "EUR", "JPY", "GBP", "CHF", "AUD", "CAD", "EUR", "SEK", "HKD", "NOK", "NZD", "MXN", "SGD", "KRW", "RON", "BGN", "RUB", "PLN", "DKK" ]; 
     var myElementToAppendTo = $("#content"); 

     $.each(data.rates, function(key, value) { 
     value2 = 1/value; 
     valueForEuro = value; 
     value = accounting.formatMoney(value, "", 4, ",", "."); 
     value2 = accounting.formatMoney(value2, "$", 4, ",", "."); 

     euro = data.rates.EUR; 
     value3 = valueForEuro/euro; 
     value4 = 1/value3; 
     value3 = accounting.formatMoney(value3, "", 4, ",", "."); 
     value4 = accounting.formatMoney(value4, "&euro;", 4, ",", "."); 

      if(jQuery.inArray(key,currencies) > -1) { 
       myElementToAppendTo.append('<div class="currencyBox"><div class="currency">'+key+'</div><div class="tab1"><div class="half">'+value+'</div><div class="half">'+value3+'</div></div><div class="tab2"><div class="half">1 '+key+' = '+value2+' </div><div class="half">1 '+key+' = '+value4+' </div></div></div>'); 
      } 
     }); 

    }); 
    }); 


</script> 

它可以在任何瀏覽器本地/服務器,但是當我建立一個iPhone應用程序的JSON結果不顯示。任何想法爲什麼?

+0

您是否在plist中將openexchangerates.org白名單列入白名單? – 2011-12-13 19:28:23

+0

我該怎麼做? – Andrei 2011-12-13 19:34:38

回答

4

您需要將要連接的服務器列入白名單(也可以是通配符)。 這是在您的PhoneGap.plist文件中完成的。 來自Phonegap文檔:

此外,最新的代碼具有新的白名單功能。如果您是 引用外部主機,則必須在「ExternalHosts」鍵下的 PhoneGap.plist中添加主機。通配符都可以。因此,如果您連接到「http://phonegap.com」,則必須將 「phonegap.com」添加到列表中(或使用通配符「* .phonegap.com」,其中 也將與子域名匹配) 。

0

不知道這是否有幫助,但我最終使用谷歌飼料插件,因爲當我有這個相同的問題時,它更容易。不得不跳過很多箍來做沒有W/O。

鏈接:http://jquery.malsup.com/gfeed/

否則,您需要修改的plist ...

的PhoneGap讀取一個名爲設置 'ExternalHosts' 來檢查什麼可以允許的。

打開phonegap.plist - 關鍵應該在那裏,你應該爲你的域添加一個新的。

相關問題