当我第一次输入多项选择值时,我根据jquery中的以下代码获得了当前输入的文本值
<select class="form-control select2" multiple="multiple" data-placeholder="Select areas" style="width: 100%;" id="edit_areas" name="area">
</select>
$(".select2-search__field").val()
$(document).on('keyup',".select2", function (e) {
var city = $("#add_city option:selected").text();
var location = $(".select2-search__field").val();});
工作正常。
但是在编辑时尝试输入更多值时,使用上面的代码显示空的
无法获得当前输入的值注意:这里我根据用户输入
动态设置下拉列表任何人都可以帮我解决这个问题。
答案 0 :(得分:0)
如果没有看到您的HTML或完整的jQuery,很难确切地看到您正在尝试做什么。所以我在黑暗中做了一个刺。
$(document).ready(function() {
$('.mrselect').on('change', function() {
var values = $(this).find('option:selected');
var fancyPantsArray = [];
values.each(function() {
fancyPantsArray.push($(this).val());
});
console.log(fancyPantsArray);
});
});
<select class="mrselect" multiple="multiple" name="mrselect">
<option value="Mr Option 1">Mr Option 1</option>
<option value="Mr Option 2">Mr Option 2</option>
<option value="Mr Option 3">Mr Option 3</option>
<option value="Mr Option 4">Mr Option 4</option>
<option value="Mr Option 5">Mr Option 5</option>
</select>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
答案 1 :(得分:0)
一旦转换为select2,就应该使用select2特定方法来获取和设置值。
设置值时(例如编辑),请使用以下代码:
$(".select2").select2("val", "Am,WY".split(","));
要获取值,请使用以下代码:
$(".select2").select2('val');
希望它能解决您的问题(因为不确定您所拥有的HTML和代码是什么,只是猜测: - ))
答案 2 :(得分:-2)
试试这个
var nome = $("#select_id").data('select').$dropdown.find("input").val();
or
$('input.select2-input').val();
&#13;