このような質問に対する答えを将来的に探している人には、わかりました。基本的には、私が到達しようとしていたAPI(例では「citrowske.com」ではない)がCORSまたはjsonpを許可していないことが分かりました。示され
は、私は(下記)を使用してしまったものと同様のコードの例である、here
これがどのように動作するかの基本的な説明を示したテストXMLファイルと一緒に、それはXMLファイルを取得するためにプロキシを使用しています"function(xml)"として見つかった "xml"として保存します。その後、XML文書が検索され、 "User"で始まる各セクションは "FirstName"と "LastName"データを取得し、 "yourdropdownbox"というHTMLセクションにドロップダウンに追加します。ノート、プロキシのよう
$.ajaxPrefilter(function (options) {
if (options.crossDomain && jQuery.support.cors) {
var http = (window.location.protocol === 'http:' ? 'http:' : 'https:');
options.url = http + '//cors-anywhere.herokuapp.com/' + options.url;
//options.url = "http://cors.corsproxy.io/url=" + options.url;
}
});
$.get(
'http://citrowske.com/xml.xml',
function (xml) {
//console.log("> ", xml);
//$("#viewer").html(xml);
////////////////////////////////////
var select = $('#yourdropdownbox');
\t \t select.append('<option value="">Select a User</option>'); \t \t \t \t
\t \t $(xml).find('User').each(function(){ \t \t \t \t \t \t \t \t \t \t \t
\t \t var FirstNames = $(this).find('FirstName').text();
\t var LastNames = $(this).find('LastName').text();
\t \t select.append("<option value='"+ FirstNames +"'>"+FirstNames+" "+LastNames+"</option>");
\t });
\t }
////////////////////////////////////
);
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<select id="yourdropdownbox">
</select>
極めて安全であるために知られているので、あなたがこれを使用するのかを見ていません。また
、私はそれを私がフォワードスラッシュの一番上の行の上
var firstnamesarray = ["0"];
var lastnamesarry = ["0"];
var i = 0;
を加えた後、交換した可能性がありたびに追加の代わりに、配列にデータを有効にしたい場合:
var FirstNames = $(this).find('FirstName').text();
var LastNames = $(this).find('LastName').text();
を
firstnamesarry[i] = $(this).find('FirstName').text();
lastnamesarry[i] = $(this).find('LastName').text();
i = i+1;
と
と "select.append" まず&ラを置き換えますST名前は
firstnamearry[i] & lastnamearry[i]
で、実施例を見るjsfiddleをチェックアウトするにはhere