2016-07-28 3 views
1

このコードを使用してデータを取得し、選択ドロップダウンに移入します。JavaScriptを使用してデータを取り込むためのAjax呼び出しの改善

$.ajax({ 
    url: 'myurl here', 
    method: 'GET', 
    success: function(result) { 
     $.each(result.main, function(result, value) { 
      $('#myselect').append($('<option>').text(value.id).attr('value', value.id)); 
     }); 
    } 
}); 

セレクトした後に行う必要があるのは、セレクトされた最初の行の値を取得することです。

どうすればいいですか?

答えて

2

これを行うには、配列の最初の項目にselectのval()を設定します。あなたは選択の中に最初のoptionに選択を強制したい場合は、0selectedIndexプロパティを設定することができますまた

success: function(result) { 
    var html = ''; 
    $.each(result.main, function(result, value) { 
     html += '<option value="' + value.id + '">' + value.id + '</option>' 
    }); 
    $('#myselect').append(html).val(result.main[0].id); 
} 

Working example

:これを試してみてください

$('#myselect').append(html).prop('selectedIndex', 0); 

はまた、私に注意ループを修正してDOMに1回だけ追加される単一のHTML文字列を生成しました。これは各反復でDOMを修正するよりも簡単です。

更新

私は私はあなたがresult.main[0].id使用することができ、その場合には、後に

それを使用することができますので、最初の1の値を取得し、変数に格納したい:

var first = result.main[0].id 
+0

インポートしたリストの最初の行をリストをインポートした後に取得する必要があります – gafasmill

+0

最初に新しく追加されたオプションではなく、最初のオプションを選択しますか?私はちょうどその場合に答えを更新しました –

+0

いいえ、私が意味するのは、最初の値を取得し、それを変数に格納して後で使用できるようにすることです。 – gafasmill

関連する問題