[英]Convert Select2 array output to string
I am trying to convert select2 array to string to be used in form.我正在尝试将 select2 数组转换为要在表单中使用的字符串。 Currently my output looks like this:目前我的输出是这样的:
?source%5B%5D=x1&source%5B%5D=x2 ?源%5B%5D=x1&源%5B%5D=x2
i am looking to convert it to have comma separated string.我希望将其转换为逗号分隔的字符串。 I have tried to use 'string = source.join()' but output of my string is empty.我尝试使用 'string = source.join()' 但我的字符串输出为空。
%5B%5D=x1&source%5B%5D=x2&string= %5B%5D=x1&来源%5B%5D=x2&字符串=
What I am trying to get is something like this:我想要得到的是这样的:
string%5B%5D=x1,x2字符串%5B%5D=x1,x2
<form action="/action_page.php">
<select class="form-control select2" multiple="" id="source" name="source[]" style="width: 250px;">
<optgroup label="Group1">
<option>x1</option>
<option>x2</option></optgroup>
<optgroup label="Group2">
<option>y1</option>
<option>y2</option></optgroup>
</select>
<script type="text/javascript">
$(".select2").select2({
tags: true
});
</script>
<script type="text/javascript">
string = source.join()
</script>
<input type='hidden' name='string' ></input>
<br><br>
<input type="submit">
</form>
I don't know if it's really what you want, but that can give you clues.我不知道这是否真的是你想要的,但这可以给你一些线索。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.7/css/select2.min.css" rel="stylesheet" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.7/js/select2.min.js"></script> <form onsubmit="onFormSubmit()"> <select class="form-control select2" multiple="" id="source" style="width: 250px;"> <optgroup label="Group1"> <option>x1</option> <option>x2</option> </optgroup> <optgroup label="Group2"> <option>y1</option> <option>y2</option> </optgroup> </select> <script type="text/javascript"> // Init Select2 var mySelect = $(".select2").select2({ tags: true }); // On form submit var onFormSubmit = function(){ // Get selected value (only if at least one selected) if (mySelect.val() !== null && mySelect.val().length > 0) { var selectedSource = "string=" + mySelect.val().join(','); alert(selectedSource); } } </script> <input type='hidden' name='string' /> <br><br> <input type="submit" /> </form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.