リストにjsonを入力しています。ただし、そのjson(phpファイル)はX秒後(不明な時間)に結果を返します。
外部ファイル-jsonデータの取得:
$(function(){
// can't modify this file
$.getJSON('json.php',
function(data) {
items = [];
$.each(data, function(key, val) {
items.push('<li id="' + key + '">' + val + '</li>');
});
});
});
インラインコード-出力:
<script>
$(function(){
$('<ul/>', {
'class': 'my-new-list',
html: items.join('')
}).appendTo('#result');
});
</script>
現在#result
、両方のコードが同時にロードされているため、出力に「アイテム」が見つからないため、何も表示されません。
外部ファイルがjsonデータを提供するまで強制的に待機させるために、インラインコードを変更するにはどうすればよいですか?多分オブザーバー?
編集:私はそれを十分に説明しなかったようです。英語が下手でごめんなさい。私はJs/Jqueryの初心者でもあります。
編集2:jsonデータの取得に遅延がなければ、すべてが機能しますが、シリアル通信を介して接続された一部の外部デバイスに依存し、jsonの取得に2、3、または5秒かかる場合があります。