これを行うためのプラグインがありますか?サーバーは、オプションのラベルと値を含むJSONコンテンツを返します。jQuery AJAXで選択ボックスのオプションを更新しますか?
私はこれを手動で行うことができます。より簡単な方法があるかどうかを確認したいと思っていました。
これを行うためのプラグインがありますか?サーバーは、オプションのラベルと値を含むJSONコンテンツを返します。jQuery AJAXで選択ボックスのオプションを更新しますか?
私はこれを手動で行うことができます。より簡単な方法があるかどうかを確認したいと思っていました。
ループとは、各テキスト/値のペアでこれを行う(うまくクロスブラウザで動作します):
var opt = document.createElement('option');
opt.value = "someValue";
opt.appendChild(document.createTextNode("someText"));
$('#mySelect').append(opt);
よろしくおねがいします。 – Damien
要素にhtmlを挿入する前に、文字通りリスト内の項目をループし、htmlを生成します。おそらく今あなたがそれに言及するプラグインがあります。 JSON経由
var selectHtml = ''
foreach obj Item in jsonobject.list)
selecthtml += "<option value="+ item.value +">" + item.label + "</option>"
$('selectList').html(selectHtml);
または類似のもの
私はJavaScriptを使用して、jQueryとAJAXの道を次の方法でJSONデータで選択ボックスを更新します。そのかなりきれいで簡潔で、仕事を完璧にします。
$.getJSON(url, data, function(responseJSON){ // GET JSON value from the server
$("#mySelect option").remove(); // Remove all the <option> child tags from the select box.
$.each(responseJSON.rows, function(index, item) { //jQuery way of iterating through a collection
$('#mySelect').append($('<option>')
.text(item.label)
.attr('value', item.value));
});
});
要素全体を置換する場合は、完全形式の選択(オプションを含む)を返すようにリモートスクリプトを構成することができます。しかし、オプション要素を "手作業で"更新することは、ほんの数行のコードではないので、jQueryプラグインが適切であるかどうかはわかりません。 – inkedmn