根据dropdownna的值禁用DropDownB的两个选项
Disable two options of DropDownB based on valu of DropdownA
我有一个脚本,如下所示:
var i = 0;
function add_relation()
{
i = i + 1;
var key = $('<select />', {
'class' : 'relation-select',
'id' : 'key_' + i,
'name' : 'key[]'
});
var condition = $('<select />', {
'class' : 'relation-select',
'id' : 'condition_' + i,
'name' : 'condition[]'
});
var constraint = $('<input />', {
'class' : 'relation-input',
'id' : 'constraint_' + i,
'type' : 'text',
'name' : 'constraint[]',
'data-provide' : 'typeahead',
'data-items' : '2'
})
var butt = $('<buton />',
{
'class' : 'btn',
'id' : 'btn_'+i,
'name' : 'btn[]',
'value': 'X'});
var left = $('<div />', {'class' : 'relation-left','id' : 'relation_' + i});
var right = $('<div />', {'class' : 'relation-right'});
var parent = $('<div />', {'class' : 'relation-parent_' + i});
$(key).append('<option value="">Select Key</option><option value="product_title">Title</option><option value="type">Type</option><option value="product_price">Price</option><option value="product_weight">Weight</option>');
$(condition).append('<option value="">Select Condition</option>'+
'<option value="is_equal_to">Is Equal To</option>'+
'<option value="is_greater_than">Is Greater Than</option>'+
'<option value="is_less_than">Is Less Than</option>'+
'<option value="starts_with">Starts With</option>'+
'<option value="ends_with">Ends With</option>'+
'<option value="contains">Contains</option>');
$(butt).click(function()
{
var id = this.id;
var res = id.split("_");
var index = res[1];
$(key).remove();
$(condition).remove();
$(constraint).remove();
$(butt).remove();
$(left).remove();
$(right).remove();
$(parent).remove();
i = i - 1;
});
$(left).append(key).append(condition).append(constraint);
$(right).append(butt);
$(parent).append(left).append(right);
$("#relation_container").append(parent);
}
现在你可以看到两个下拉菜单正在动态生成…
现在我想要一个函数,其中基于下拉"键"的值下拉"条件"的两个选项将被禁用
我怎么才能做到呢?
您可以绑定下拉键的更改事件并禁用相应的条件选项-
$(documen).on('change','select[id^=key_]',function(){
var selectedKey= $(this).val();
var idIndex = $(this).attr('id').replace('key_','');
var $conditionSelectBox = $(document).find('#condition_'+idIndex);
// check if selected key is product title or type
if(selectedKey=="product_title" || selectedKey=="type")
{
// disable option with values 'is_greater_than' and 'is_less_than'
$conditionSelectBox.find('option[value="is_greater_than"]').attr('disabled',true);
$conditionSelectBox.find('option[value="is_less_than"]').attr('disabled',true);
}
else
{
// enable all options again
$conditionSelectBox.find('option').removeAttr('disabled');
}
});
相关文章:
- 我可以在Dynamics CRM 2016的复合地址字段中添加两个选项字段吗
- 仅在使用javascript和html的浏览器中在相同的两个选项卡之间切换
- 一个文本框,其中两个选项的值不同
- 两个选项卡—第一个选项卡在第二个选项卡中处于调试模式时被卡住
- 我有下面垂直菜单的jquery代码,当我悬停在apparels选项卡上时,我有两个选项卡作为apparels和化妆品
- CRM 2011+问题与javascript中的两个选项集
- 如何使用标题在 PHP 中打开新的两个选项卡
- 引导导航选项卡同时显示两个选项卡
- Boostrap和Angular:同时保持两个选项卡处于活动状态
- 如果我有两个选项的代码,单选按钮的结果将无法正常工作
- 并排显示选择框中的两个选项
- 切换按钮在两个选项卡之间切换
- 有两个选项卡打开到网站,你能知道哪个选项卡是活动的吗
- 删除两个选项
- onchange上有两个选项
- Js在两个选项之间切换;如果“;
- jQueryUI在另一个选项卡中有两个选项卡-高度是't在隐藏时设置
- add()生成两个选项卡,其中一个处于奇数位置,为空且未使用
- Jquery一旦从选择下拉列表中选择两个选项运行代码
- 当两个选项被选中时,使用jquery更改按钮上的链接