javascript - 如何查找是否在多个select2中选择了一个值?
问题描述
我有一个多个 select2 下拉列表,如下所示:
<select id="ddlServices" class="js-basic-multiple select2-hidden-accessible" multiple="" style="width: 100%" tabindex="-1" aria-hidden="true">
<option vlaue='1'>one</option>
<option vlaue='2'>two</option>
<option vlaue='3'>three</option>
<option vlaue='4'>four</option>
</select>
<asp:HiddenField ID="hfServices" runat="server" />
我有一个隐藏字段可以在下拉更改事件中保存 select2 选定的值。
如果用户在下拉列表的单选或多选中选择选项 3,我想显示警报。我试试这个,如下所示。
<script>
$('#ddlServices').on('change', function () {
$('#<%=hfServices.ClientID%>').val($(this).val());
var other = $('#<%=hfServices.ClientID%>').val($(this).val());
if (other.search('3')) {
alert('somthing');
}
});
</script>
但我的代码总是显示警报。3
如果用户在多选中选择了值或从下拉列表中选择了一个值,如何显示警报。
解决方案
您在这里有一些问题,第一个是您在 html 代码上写了“vlaue”而不是“value”。
第二个问题是您出于某种原因编写了“$('#<%=hfServices.ClientID%>').val”。
您可以将您的 js 更改为以下代码:
$('#ddlServices').on('change', function () {
if ($(this).val()[0] == '3') {
alert("somthing");
}
});
和 html 到这个:
<select id="ddlServices" class="js-basic-multiple select2-hidden-accessible" multiple="" style="width: 100%" tabindex="-1" aria-hidden="true">
<option value='1'>one</option>
<option value='2'>two</option>
<option value='3'>three</option>
<option value='4'>four</option>
</select>
<asp:HiddenField ID="hfServices" runat="server" />
推荐阅读
- php - 带有子选择的 Doctrine 查询构建器内部联接
- symfony4 - 在 API 平台中保存相关对象
- asp.net-core - .NET Core 操作筛选器不是属性类
- c# - 有没有办法快速检查,字符串与正则表达式匹配的百分比是多少?
- laravel - Laravel google oauth 2回调返回403禁止
- solver - SimCity (BuildIt) 经济的子集可以用 Minizinc 表示吗?
- python - 机器人框架:使用关闭所有浏览器时套件拆解失败
- docker - 如何在没有 pip 的 docker 映像中安装 AWS CLI 工具?
- python - 将日期框架中列的值与熊猫中其他数据框架的列值进行比较
- r - 如何遍历数据框并计算不同字符串的出现次数并将其计数添加到其他列