У меня есть динамически генерируемый выбор с некоторыми опциями, и он хорошо показывает опции в обычных браузерах, но его пустые опции в IE. Вот сгенерированный HTML:
<select name="0" id="custom_0" style="border-bottom: #c0cedb 1px solid; border-left: #c0cedb 1px solid; background-color: #ededed; width: 280px; font-size: 0.87em; border-top: #c0cedb 1px solid; border-right: #c0cedb 1px solid">
<option id="1000" value="0" name="00">1x2GB ECC DDRIII 2GB ECC DDRIII</option>
<option id="1001" value="10" name="01">2x2GB ECC DDRIII 4GB ECC DDRIII (+10.00 €)</option>
</select>
Я не могу показать вам javascript, так как его так много, и я смогу сделать его простым только для демонстрации. Может быть, некоторые из вас имели бы подобный опыт и могли бы понять это. Спасибо
Я добавил немного JavaScript:
$('#custom_order').append('<tr id="custom_'+category+'_row"><td'+padding+'>'+header+'<select id="custom_'+category+'" name="'+category+'" style="background-color:#EDEDED;border:1px solid #C0CEDB;width:280px;font-size:0.87em"></select>'+plusspan+'</td></tr>');
for (var i=0;i<components[category]['value'].length;i++){
$('#custom_'+category).append('<option id="'+components[category]['value'][i]['id']+'" value="'+components[category]['value'][i]['price']+'"></option>');
removals(category,i);
dependencies(category,i);
selectInput(category);
}
getDiff(category);
Функция getDiff () добавляет значения к опциям с помощью функции html (). Странно то, что если я оповестил html опции сразу после функции getDiff (), она показывает заполненное значение. И это я поместил функцию getDiff () в цикл for, где генерируются параметры, он заполняет значения и показывает их в IE, но не последний.
Я вызываю getDiff () вне цикла для оптимизации, и, поскольку я могу добавить значения позже, после того как все параметры будут сгенерированы. Ну, по крайней мере, я думал, что смогу, так как он работает на Firefox и Chrome.