我有代码来显示JQuery模式对话框:
if (jQuery.browser.msie) {
$("#dialog-form").dialog();
} else {
$("#dialog-form").dialog('open');
}
$("#dialog-form").dialog({
autoOpen: false,
modal: true,
buttons: {
Cancel: function () {
$(this).dialog("close");
}
},
close: function () {
$(this).dialog("close");
}
});
这是HTML:
<div id="dialog-form" title="Select Employee">
<form id="dialogForm">
<fieldset>
<select id="employeeList"> <option value="0"><%=LocalizedContext.SelectAnEmployeeText%></option> <%=model.EmployeeOptions%> </select>
</fieldset>
</form>
</div>
它在FF中显示正常,但是当它在IE中弹出时,对话框就在那里(带有取消按钮),但是下拉列表丢失了。任何想法为什么下拉列表没有出现在IE?
答案 0 :(得分:1)
试试这段代码..
if (jQuery.browser.msie) {
$("#dialog-form").dialog();
} else {
$("#dialog-form").dialog('open');
$('#employeeList').show(); //show the select box explicitly
}
答案 1 :(得分:0)
您的代码是否嵌入在.ready()方法中?否则它会尝试渲染尚未准备好的div。即。
$(document).ready( function (){
// your code below
if ($.browser.msie) {
$("#dialog-form").dialog();
} else {
$("#dialog-form").dialog('open');
}
$("#dialog-form").dialog({
autoOpen: false,
modal: true,
buttons: {
Cancel: function () {
$(this).dialog("close");
}
},
close: function () {
$(this).dialog("close");
}
});
});