好的,這表明了一種方法來實現你的問題的解決方案,據我所知。我只使用了1行3個下拉菜單,而不是1個主下拉菜單,然後又增加了3行下拉菜單,但是,它很容易適應您的需求:
HTML(1行3):
<select id="DropDownList1" name="DropDownList1"></select>
<select id="DropDownList2" name="DropDownList2"></select>
<span id="List">
<select id="DropDownList3" name="DropDownList3"></select></span>
<span id="Text" style="display: none" >
<input id="EnterText" class="k-textbox" /></span>
JS,劍道UI,jQuery的,jQuery用戶界面:
var dataModel1 = [{ItemName: 'First Name', ItemId: 1},{ItemName: 'Middle Name', ItemId: 2},{ItemName: 'Last Name', ItemId: 3},{ItemName: 'Preferrred Name', ItemId: 4}];
var dataModel2 = [{ItemName: 'Equals', ItemId: 1},{ItemName: 'Contains', ItemId: 2},{ItemName: 'Starts With', ItemId: 3},{ItemName: 'Ends With', ItemId: 4}];
var dataModel3 = [{ItemName: 'John', ItemId: 1},{ItemName: 'Dave', ItemId: 2},{ItemName: 'Simon', ItemId: 3},{ItemName: 'Eric', ItemId: 4}];
$('#DropDownList1').kendoDropDownList({
optionLabel: 'Select item...',
dataTextField: 'ItemName',
dataValueField: 'ItemId',
change: function(e) {
var that = this, ddlQuery = $('#DropDownList2').data('kendoDropDownList');
if(ddlQuery !== undefined) {
switch(that.value()) {
case '1':
ddlQuery.value('2');
break;
default: break;
}
}
},
dataSource: {
data: dataModel1,
schema: {
data: function(response) { return response || {}; }
}
}
});
$('#DropDownList2').kendoDropDownList({
optionLabel: 'Select item...',
dataTextField: 'ItemName',
dataValueField: 'ItemId',
change: function(e) {
var that = this, ddlQuery = $('#DropDownList3').data('kendoDropDownList');
if(ddlQuery !== undefined) {
switch(that.value()) {
case '1':
$('#List').fadeOut('fast', function() {
$('#Text').fadeIn();
});
break;
default:
$('#Text').fadeOut('fast', function() {
$('#List').fadeIn();
});
break;
}
}
},
dataSource: {
data: dataModel2,
schema: {
data: function(response) { return response || {}; }
}
}
});
$('#DropDownList3').kendoDropDownList({
optionLabel: 'Select item...',
dataTextField: 'ItemName',
dataValueField: 'ItemId',
change: function(e) {
},
dataSource: {
data: dataModel3,
schema: {
data: function(response) { return response || {}; }
}
}
});
的的jsfiddle這可以在這裏看到:
http://jsfiddle.net/8PW98/17/
我希望這有助於...
您可以爲主下拉列表的onchange事件添加一個事件處理程序,並在其中手動設置其他下拉列表應該顯示的值... ...? –
這就是我所處的路徑......你能提醒我如何獲得js中引用的下拉列表的'文本'值嗎? var columnName = cboSearchField2.text;是不正確的... – ripsin