少し前に 、以前の選択に基づいてmysqlからjQueryドロップダウンにJSONデータを取得する方法を尋ねるこの質問を投稿しました
さて、ここの人々は素晴らしかったし、私は解決策を得ました。私が今抱えている問題は、提案されたソリューションが私の実稼働環境では機能しないが、私のテストでは機能するということです。
jQueryを使用しているエントリの重複を防ぐためにempty()
、問題は、使用empty()
すると最初のオプションを選択できないように見えることです。
これは、JSONからoptiosnを生成している関数です
function(data){
var select = $('[name="employee_manager"]');
select.empty();
select.append(new Option(ucfirst('No Manager'),'100'));
$.each(data, function(index, array) {
select.append(new Option(ucfirst(array['first_name'])+ " "+ucfirst(array['last_name']),array['id']));
});
これは、選択を妨げないempty()の代替手段ですか?
編集これは、動的に入力される項目が2つ未満の場合にのみ問題になるようです。
編集2これがHTMLです。empty()
存在する場合、最初のオプションを選択できないようです
<label for="manager">Reports To</label>
<select name="employee_manager">
<option value="1">Please Select Employee Role</option>
<option value="2">John Doe</option>
<option value="3">James Smith</option>
</select>
編集3
空のクラスが私の選択にスパンを追加しているようです
<div class="selector">
<span style="-moz-user-select: none;">Jane Smith</span>
<select name="employee_manager" style="opacity: 0;">
<option value="100">No Manager</option>
</select>
</div>
編集4
さて、ここに問題を示すjsfiddleがあります。JSONデータを正しくロードできませんでしたが、リストの最初の項目をクリックしようとすると、問題が発生する可能性があります。ユニフォームが削除されたかのようにユニフォームが
問題になっているようですhttp://jsfiddle.net/BandonRandon/xXUfp/1/