javascript - 无法使用 JavaScript 在多选中选择带有空格的选项值
问题描述
<select id="subjectsPassed" name="subjects_passed[]" data-width="100%">
<option value="Hindi">Hindi</option>
<option value="English">English</option>
<option value="Math">Math</option>
<option value="Science">Science</option>
<option value="Social Science">Social Science</option>
<option value="Sanskrit">Sanskrit</option>
</select>
我有一串主题,带有空格的主题未能被选中
使用 JavaScript
var hidValue = 'Hindi, English, Math, Science, Social Science, Sanskrit';
var optionVal = [];
var selectedOptions = hidValue.split(/\s*(?:,|$)\s*/);
for(var i in selectedOptions) {
optionVal[i]= selectedOptions[i];
}
optionVal.forEach(myFunc);
function myFunc(value){
$("#subjectsPassed option[value="+value+"]").prop("selected", true);
}
$("#subjectsPassed").multiselect('reload');
请给出一个好的解决方案
解决方案
CSS 选择器的属性值应该用双引号括起来。所以改变:
$("#subjectsPassed option[value="+value+"]")
至:
$('#subjectsPassed option[value="'+value+'"]')
推荐阅读
- reactjs - 未定义的 css 模块类名
- google-app-maker - 如何向组织外部的用户公开我的应用程序制造商应用程序
- ssis - SSIS 2016 系统变量 System::ErrorDescription 缺失?
- kubernetes - 如何在 N 小时内运行一次 Kubernetes 作业?
- c# - 测试控制器时如何模拟viewModel?
- android - 数字Edittext上的多个点
- azure - Application Insights Analytics 同一会话中的多个事件
- c# - 在 Xamarin Android 中访问 UI 线程
- php - 为 Wordpress 组合 2 个过滤器
- excel - 员工技能工作簿 - 添加新员工的按钮/宏