我一直在我的应用程序中使用Jquery Chosen插件。
我的网页包含中有2个下拉列表 类别--->正常下拉(包含所有类别) AttributeList - >选择下拉列表(包含所有属性)
每个类别都有多个属性从AttributeList链接。 假设我们有10个类别和40个属性。 示例CategoryA链接到4个属性(Attr1,Attr2,Attr3和Attr4)
当我们从Category Dropdown中选择CategoryA时,列表(Attr1,Attr2,Attr3和Attr4)应该 在属性列表下拉列表中加载,并且将从单击所选下拉列表时显示的40个属性中禁用。
CateoryA ---在类别DropDown中选择
Attr1 X Attr2 X Attr3 X Attr4 X ---> AttributeList选择下拉列表
Attr1 - 禁用 Attr2 - 禁用 Attr3 - 禁用 Attr4 - 禁用 Attr5 - 启用状态 Attr39 - 启用状态 Attr40 - 启用状态
我们如何在页面加载/下拉选择更改中为选定的下拉列表实现自动填充。
请尽快帮我解决。 至少帮助我提供所选插件的任何文档。
答案 0 :(得分:0)
我的代码在cshtml页面中 (a'类别'下拉列表和' txtAttributes'是选定的下拉菜单) 目前它填充空。但是我需要至少其中一些应该基于逻辑在负载上填充。
<div class="row clear">
<div class="span2">
Category:</div>
<div class="span8">
<select id="Category" multiple="multiple">
</select>
</div>
</div>
<div class="span2">
Attributes:</div>
<div class="span8">
<select id="txtAttributes" style="display: none;"
data-placeholder="Select Attribute" multiple="multiple"
class="chosen-select-width" tabindex="-1"></select>
</div>
$.ajax({
url: cexPortal.getAbsoluteURL("CMS/Attribute/ListJson"),
type: 'GET',
data: '',
success: function (data) {
var AttributeList = data.List;
$(document).data('AttributeList', AttributeList);
$("#txtLinkAttributesToCategory").empty();
$.each(AttributeList, function (i, data) {
$("#txtAttributes").append("<option value=\"" + data.StructureId + "\">" + data.StructureName + "</option>");
});
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%"
}
}
$(document).data('ChosenConfig', config);
for (var selector in config) {
$(selector).chosen(config[selector]);
}
}
});
答案 1 :(得分:0)
请使用所选的api动态选择要选择的值。
$('#kpiselect').val(["Attr1","Attr2","Attr3","Attr4"]).trigger("chosen:updated");