我正在使用ajax获取部分视图的HTML,其中包含一个下拉列表,我希望使用Chosen jQuery插件进行样式设置。我动态添加的第一个是正确的样式,但所有其他成为链接,并没有得到适当的样式/功能。
在行中添加后,我使用:
$(".chosen").last().css('width', '150px').chosen();
该元素确实开始正确设置样式,但它并没有完全正确。这是输出。
<div id="SelectedRate_chzn" class="chzn-container" style="width: 150px;">
<a href="javascript:void(0)" class="chzn-single chzn-default">
<span>Select an Option</span>
<div><b></b></div>
</a>
<div class="chzn-drop" style="left:-9000px;">
<div class="chzn-search">
<input type="text" autocomplete="off">
</div>
<ul class="chzn-results"></ul>
</div>
</div>
我认为我的部分观点没有任何问题,但如果您需要其他内容,请在下方发表评论。
答案 0 :(得分:1)
通过对话框向现有表单添加记录时我遇到了同样的问题,我设法按如下方式执行此操作:
成功调用ajax之后,我在原始选择元素中添加新选项并触发 liszt:updated 事件,以选择重新读取select元素和更新自己。
例如: ajax调用返回要添加为json string
的新联系人数据{ id:123, label:'new contact name' }
在选择中附加一个新选项:
$('select#contact_id').append('<option value='+data.id+'>'+data.label+'</option>')
触发事件(您可以将其链接到上一个电话)
$('select#contact_id').trigger('liszt:updated');
希望这能帮到你!
亲切的问候