要約すると、特定のノードの子を見つけるためにjQueryを使用するxml文字列があります。
これらの子とその値は、HTML選択ボックスを作成し、それをWebページに追加するために使用されます。
XML
<!--- Another node level !-->
<Salutation restricted="no" type="dropdownBox" tooltip="Select a title for the customer" required="yes" size="6">
<value>Mr</value>
<value>Sir</value>
<value>Mrs</value>
<value>Miss</value>
<value>Lord</value>
</Salutation>
コード
function dropdownBuilder( xml, element, id ) {
// find node with specific name and get its children
selection = $("<div>" + xml + "</div>").find(element).children();
console.log( selection );
// generate a select box
var selectBox = "<select id=\"" + id + "\"> ";
for ( var j = 0; j < selection.length; j++ ) {
selectBox += "<option value=\"" + selection[j].innerHTML + "\">"
+ selection[j].innerHTML + "</option>";
}
selectBox += "</select>";
// return html
return selectBox;
}
出力FIREFOX
<select id="dropdownBox1" data-hasqtip="true" aria-describedby="qtip-1">
<option value="Mr">Mr</option>
<option value="Sir">Sir</option>
<option value="Mrs">Mrs</option>
<option value="Miss">Miss</option>
<option value="Lord">Lord</option>
</select>
出力IE
<select id="dropdownBox1" data-hasqtip="true" jQuery16309410884371447445="60"/>
IEのコンソールログには、「LOG:[オブジェクトオブジェクト]」とだけ表示されます。
.val()、. value、.data、.attrを使用して出力に変更してみました
これがFFでは正常に機能するがIEでは機能しない理由はありますか?
JSFIDDLE
ありがとう