首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bootstrap-Multiselect:为什么这个逗号分隔值的字符串在转换后不能作为数组工作

Bootstrap-Multiselect:为什么这个逗号分隔值的字符串在转换后不能作为数组工作
EN

Stack Overflow用户
提问于 2016-09-06 13:14:31
回答 2查看 1.8K关注 0票数 0

我想从字符串生成数组,然后将这些值放在数组中传递给multiselect to select选项。

我尝试了以下代码,但它不起作用:

代码语言:javascript
复制
var str =  "MAR ,APR, MAY ,JUN";
var a = (new Function("return [" +str+ "];")());
$('#example-optionClass').multiselect('select', a );

上面的代码显示错误:ReferenceError: MAR is not defined

以下是我的源代码:

代码语言:javascript
复制
<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
  <!-- Include the plugin's CSS and JS: -->
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.13/js/bootstrap-multiselect.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.13/css/bootstrap-multiselect.css" type="text/css"/>
<script type="text/javascript">
    $(document).ready(function() {
        $('#example-optionClass').multiselect({
            includeSelectAllOption: true, // add select all option as usual
            optionClass: function(element) {
                var value = $(element).val();
 
                if (value%2 == 0) {
                    return 'odd'; // reversed
                }
                else {
                    return 'even'; // reversed
                }
            }
        });
    });
</script>
<style type="text/css">
    #example-optionClass-container .multiselect-container li.odd {
        background: #eeeeee;
    }
    #example-optionClass-container .multiselect-all {
       background: #eeeeee;
    }
</style>
</head>
<body>
<div class="container">
  <h2>Bootstrap Multiselect Test</h2>  
  <div id="example-optionClass-container">
    <select id="example-optionClass" multiple="multiple">
     <option value="JAN">January</option>
	 <option value="FEB">February</option>
	 <option value="MAR">March</option>
	 <option value="APR">April</option>
	 <option value="MAY">May</option>
	 <option value="JUN">June</option>
	 <option value="JUL">July</option>
	 <option value="AUG">August</option>
	 <option value="SEP">September</option>
	 <option value="OCT">October</option>
	 <option value="NOV">November</option>
	 <option value="DEC">December</option>		
    </select>
</div>
</div>
</body>
</html>

请帮帮me.thanks

EN

回答 2

Stack Overflow用户

发布于 2016-09-06 13:53:13

你可以试着这样做,

代码语言:javascript
复制
var str = "MAR, APR, MAY, JUN";

var a = (function() {
  return str.split(', ');
}());

$('#example-optionClass').multiselect('select', a);
票数 1
EN

Stack Overflow用户

发布于 2016-09-06 14:05:54

您可以使用as,

代码语言:javascript
复制
var str = "MAR ,APR ,MAY ,JUN";

代码语言:javascript
复制
  var a = str.split(' ,');

  $('#example-optionClass').multiselect('select', a);

2.

代码语言:javascript
复制
  var a = str.split(' ,');

  $('#example-optionClass').multiselect(a.push('select'));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39341099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档