出于某种原因,我不能让这个工作.
我的选项列表使用以下脚本动态填充:
function addOption(selectId, value, text, selected) {
var html = '<option value="'+value+'">'+text+'</option>';
if (selected == "on") {
html = '<option value="'+value+'" selected="selected">'+text+'</option>';
}
$('#'+selectId).append(html);
}
function addSalespersonOption(id, name, defsales) {
addOption('salesperson', id, name, defsales);
}
Run Code Online (Sandbox Code Playgroud)
这是HTML:
<td class="text-r"><label for="salesperson">Salesperson:</label></td>
<td>
<select id="salesperson">
<option value="">(select)</option>
</select>
</td>
Run Code Online (Sandbox Code Playgroud)
到目前为止,输出是:
<option value="1266852143634" selected="selected">Eric Hunt</option>
Run Code Online (Sandbox Code Playgroud)
DOM显示了这个:
index 2
disabled false
value "1266852143634"
text "Eric Hunt"
selected false
defaultSelected true
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,当页面加载时,下拉列表不会显示Eric Hunt为预选.这件事也没有.
如何获得"选择为真"而不是"defaultSelected true"?
编辑:事实证明,由于deceze的帮助和rosscj2533从下面的答案,上面的代码完美地工作.它不适合我的唯一原因是,我发现Ruby代码覆盖了select元素.
感谢大家的帮助,
干杯