kfc*_*kfc 1 javascript webforms jquery-chosen
我使用来自http://harvesthq.github.io/chosen/的插件作为我的选择.在文档就绪时,我向它添加一个空选项,然后调用selected,但它永远不会呈现data-placeholder中定义的消息.我究竟做错了什么?我正在使用asp.net webforms,下拉列表绑定在服务器上.下面是我的标记和我的JavaScript
<asp:DropDownList ID="cbxLanguage" data-placeholder="choose a language..." CssClass="input-large chzn-select" DataTextField="Name" DataValueField="Id" runat="server" Width="210" required="Language required"></asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)
和我在文档准备就绪时调用的javascript:
function pimpSelect(select, options) {
var prepend = '';
if (select.attr('data-placeholder')) {
prepend = '<option></option>';
}
if (options) {
options = prepend + options;
select.empty().html(options);
}
else {
select.prepend(prepend);
}
if (select.hasClass('chzn-select')) {
var _width = select.css('width');
select.chosen({ width: _width });
}
}
Run Code Online (Sandbox Code Playgroud)
原因是您应该首先初始化空值选项.
<option value=""></option>
Run Code Online (Sandbox Code Playgroud)
你的选择应该是这样的.
<select name="cbxLanguage" id="ContentPlaceHolder1_cbxLanguage" class="chzn-select" data-placeholder="choose a language..." required="Language required" style="width: 210px;">
<option value=""></option>
<option value="1">English</option>
<option value="2">French</option>
<option value="3">Spanish</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我不确定原因,但如果你查看chosen.js那里的例子,你就可以找到它.