当按下提交按钮时,我需要帮助将多选中的选定数据导入我的javascript数据字符串。
所以我选择了这个:
<select multiple class="form-control" name="DivisionSelect[]">
<option value="|TD">Traffic Division</option>
<option value="|CP">Metro - C Platoon</option>
<option value="|DP">Metro - D Platoon</option>
</select>
我希望所选数据彼此相邻,如下所示:“| TD | DP”如果选择了Traffic和D Platoon。我怎么能这样做?
答案 0 :(得分:2)
您可以在join()
值上使用select
并将其添加到字符串。
$('select').change(function() {
var str = '&Divs="' + $(this).val().join('') + '"';
console.log(str)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select multiple class="form-control" name="DivisionSelect[]">
<option value="|TD">Traffic Division</option>
<option value="|CP">Metro - C Platoon</option>
<option value="|DP">Metro - D Platoon</option>
</select>
要在表单提交中获取此值,您可以使用submit
上的form
事件,并使用select
find
的值
$('form').submit(function(e) {
e.preventDefault();
var value = $(this).find('select[name="DivisionSelect[]"]').val();
var str = '&Divs="' + (value ? value.join('') : '') + '"';
console.log(str)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="">
<select multiple class="form-control" name="DivisionSelect[]">
<option value="|TD">Traffic Division</option>
<option value="|CP">Metro - C Platoon</option>
<option value="|DP">Metro - D Platoon</option>
</select>
<br>
<input type="submit" value="Submit">
</form>
答案 1 :(得分:1)
$("select").change(function() {
var value = $("select option:selected").map(function() {
return $(this).val()
}).get().join("")
console.log("&Divs="+value)
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select multiple class="form-control" name="DivisionSelect[]">
<option value="|TD">Traffic Division</option>
<option value="|CP">Metro - C Platoon</option>
<option value="|DP">Metro - D Platoon</option>
</select>
&#13;
使用.map()
描述:将数组或对象中的所有项目转换为新的项目数组。
答案 2 :(得分:0)
Hev你试过,读出所选的选项,然后将它们附加到一个字符串?您可以通过concat()追加:
var str1 = "Hello ";
var str2 = "world!";
var res = str1.concat(str2);
我希望这有帮助:)
答案 3 :(得分:0)
我认为下面的代码对你有用。
var querystring = "&DivisionSelect=";
$('[name="DivisionSelect"] :selected').each(function(i, selected){
querystring += $(selected).val()+querystring;
});
alert(querystring);