我有以下 asp.net 代码,它使用选择的 jQuery 来自定义dropdownlist
:
<asp:DropDownList ClientIDMode="Static" ID="ddlProvider" CssClass="setProvDDStyle" runat="server" AppendDataBoundItems="true"></asp:DropDownList>
<asp:DropDownList ClientIDMode="Static" ID="ddlSpecialty" CssClass="chosen-select setProvDDStyle" runat="server" AppendDataBoundItems="true"></asp:DropDownList>
我使用以下脚本来初始化dropdownlist
:
<script type="text/javascript">
var config = {
'.chosen-select': {},
'.chosen-select-deselect': { allow_single_deselect: true },
'.chosen-select-no-single': { disable_search_threshold: 10 },
'.chosen-select-no-results': { no_results_text: 'Oops, nothing found!' },
'.chosen-select-width': { width: "95%" }
}
for (var selector in config) {
$(selector).chosen(config[selector]);
}
</script>
CSS:
.setProvDDStyle
{
width: 100%;
}
这是输出:
我故意留下了提供商下拉列表而没有chosen-select
风格创造了风格。当我调整浏览器窗口大小时,您可以看到dropdownlist
与chosen select
样式不会根据容器调整大小。我在里面添加了上面的脚本windows.resize()
功能但没有真正做任何事情。
我将如何完成样式化的下拉列表以根据容器的大小调整大小
我将您的下拉列表包装在容器 DIV 中:
<div id="ddlSpecialtyContainer">
<asp:DropDownList ClientIDMode="Static" ID="ddlSpecialty" CssClass="chosen-select setProvDDStyle" runat="server" AppendDataBoundItems="true"></asp:DropDownList>
</div>
然后我添加了一个窗口resize
事件处理程序,用于调整下拉列表容器内动态生成的 jQuery 选择控件的大小。
$(window).resize(function () {
var width = $("#ddlSpecialtyContainer")[0].offsetWidth + "px";
$("#ddlSpecialtyContainer .chosen-container").css("width", width);
});
这似乎按照您的要求工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)