使用javascript或jquery检测下拉列表中选择的重复值
detect duplicate value selected in dropdownlist using javascript or jquery?
我在中继器中有一个下拉列表。这个下拉列表出现在中继器的每个记录显示中。我想有应该没有重复的值被选择从下拉在客户端只有。我的代码是
<asp:Repeater ID="rep_hello" runat="server">
<ItemTemplate>
<asp:Label ID="lbl" runat="server" Text=' <%#DataBinder.Eval(Container.DataItem, "batchid")%>'></asp:Label>
<%#DataBinder.Eval(Container.DataItem, "batchid")%><br />
<%#DataBinder.Eval(Container.DataItem, "ts")%><br />
<asp:DropDownList ID="drp_comp" runat="server">
<asp:ListItem Value=""></asp:ListItem>
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
所以请帮助我…
下面是一段jquery代码:
var $mySelects = $('select[name$=drp_comp]');
var previousValue;
$mySelects
.focus(function(event) {
// to save the previous value
previousValue = $(this).val();
}
.change(function(event) {
var newValue = $(this).val();
$mySelects.not($this).each(function() {
var $this = $(this);
if ($(this).val() === newValue) {
alert('The value "' + newValue + '" has already been selected. Choose another one.');
$this.val(previousValue);
return false; // stop looping
}
});
});
在可用性方面,我建议您在其他选择中禁用已选择的值。
如果您回发每个更改,则可以通过设置ListItem.Enabled = false
在代码隐藏中完成此操作。
如果你想在客户端这样做,这将给你的想法:
var $mySelects = $('select[name$=drp_comp]');
$mySelects.change(function(event) {
var $this = $(this), val = $this.val();
$mySelects.not($this).find('option[value='+val+']').prop('disabled',true);
});
d。
我试过下面的代码,它为我工作
function EmailPriortyCheker() {
var Email = $('[id$=drpEmailPriorty]').val();
var Pager = $('[id$=drpPagerPriorty]').val();
var CellPhone = $('[id$=drpCellPhonePriorty]').val();
if (Email == "") { } else {
if (Email == Pager || Email == CellPhone) {
alert('Priorty cannot be same.');
$('[id$=drpEmailPriorty]').val("");
}
}
}
function PagerPriortyCheker() {
var Email = $('[id$=drpEmailPriorty]').val();
var Pager = $('[id$=drpPagerPriorty]').val();
var CellPhone = $('[id$=drpCellPhonePriorty]').val();
if (Pager == "") { } else {
if (Pager == Email || Pager == CellPhone) {
alert('Priorty cannot be same.');
$('[id$=drpPagerPriorty]').val("");
}
}
}
function CellPhonePriortyCheker() {
var Email = $('[id$=drpEmailPriorty]').val();
var Pager = $('[id$=drpPagerPriorty]').val();
var CellPhone = $('[id$=drpCellPhonePriorty]').val();
if (CellPhone == "") { } else {
if (CellPhone == Email || CellPhone == Pager) {
alert('Priorty cannot be same.');
$('[id$=drpCellPhonePriorty]').val("");
}
}
}
我的HTML代码是:
<asp:DropDownList ID="drpEmailPriorty" onchange="EmailPriortyCheker();" TabIndex="5"
runat="server">
<asp:ListItem Text="Select Order" Value=""></asp:ListItem>
<asp:ListItem Text="First" Value="1"></asp:ListItem>
<asp:ListItem Text="Second" Value="2"></asp:ListItem>
<asp:ListItem Text="Third" Value="3"></asp:ListItem>
</asp:DropDownList>
<asp:DropDownList ID="drpPagerPriorty" onchange="PagerPriortyCheker();" TabIndex="8"
runat="server">
<asp:ListItem Text="Select Order" Value=""></asp:ListItem>
<asp:ListItem Text="First" Value="1"></asp:ListItem>
<asp:ListItem Text="Second" Value="2"></asp:ListItem>
<asp:ListItem Text="Third" Value="3"></asp:ListItem>
</asp:DropDownList>
<asp:DropDownList ID="drpCellPhonePriorty" onchange="CellPhonePriortyCheker();" TabIndex="11"
runat="server">
<asp:ListItem Text="Select Order" Value=""></asp:ListItem>
<asp:ListItem Text="First" Value="1"></asp:ListItem>
<asp:ListItem Text="Second" Value="2"></asp:ListItem>
<asp:ListItem Text="Third" Value="3"></asp:ListItem>
</asp:DropDownList>
相关文章:
- 如何使用jQuery选择下拉列表的值
- Jquery 读取编号组中选择下拉列表的数组
- 使用$_POST值选择下拉列表
- 使用Ajax或JavaScript选择下拉列表选项后,在同一页面上执行PHP脚本
- 根据url填充表单选择下拉列表
- 使 URL 开始选择下拉列表
- 引导程序选择下拉列表
- 如何通过选择下拉列表中的选项从另一个 php 文件中获取数据
- 保持元素处于禁用状态,直到未在 Angularjs 中选择下拉列表
- Knockoutjs - 单击按钮时打开选择下拉列表
- 使用选择下拉列表的性别角度过滤器
- 如何根据选择下拉列表从表单重定向到 URL
- 如果未选择第一项,请选择下拉列表 jQuery
- 选择下拉列表需要在选中时显示提供商的详细信息-无法通过我的脚本显示url
- 使用对象(JavaScript或jQuery)填充选择下拉列表
- 如何在选择下拉列表值的文本框中获取值
- 删除基于先前下拉列表选择的“选择下拉列表”选项
- jQuery验证插件-比较两个选择下拉列表的自定义方法
- 通过ajax选择下拉列表
- JavaScript:使用用于Protractor测试的页面对象选择下拉列表项