【jQuery】html()でselectボックスを書き換えようとしたらIEだけおかしくなった


Ajaxを使ってselectボックスを生成するスクリプトを組んでたんだけど・・・・・


function createSelectBox(json, insertId) {
	
	var object = $("#" + insertId); 
	var strClass = object.attr("class");

	var resultData = "";
	for (var i in json) {
		if (json[i].key) {
			resultData += "";	
		}
		else {
			resultData += "";
		}
			
	}
	resultData += "";
	object.html(resultData);
}

これだとIEだけ

<select>
  <select>
    
  </select>
</select>


まじかよ(;^ω^)


jQuery「ワリイが、こっからさきIEは一方通行だ。おとなしく尻尾巻きつつ泣いて無様にもとの居場所に帰還しやがれ!」

jQuery「このIE(せかい)が…マイクロソフト(あんた)の作った仕様(システム)どおりに動いてっんなら……まずはその幻想をぶち殺す」


セリフをいくつか思い出したところでソースを以下に修正


function createSelectBox(json, insertId) {

	var object = $("#" + insertId);
	// optionを全て削除
	object.children().remove();

	for (var i in json) {
		object.append($('

早い話optionタグだけを全部削除して作りなおした方が早いと思った(´・ω・`)


0 件のコメント:

コメントを投稿