Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Jquery-Select2中的多值选择中设置选定值。?_Jquery_Ajax_Jquery Select2 - Fatal编程技术网

如何在Jquery-Select2中的多值选择中设置选定值。?

如何在Jquery-Select2中的多值选择中设置选定值。?,jquery,ajax,jquery-select2,Jquery,Ajax,Jquery Select2,大家好,我正在用Jquery-Select2绑定我的下拉列表。工作正常,但现在我需要使用Jquery-Select2绑定我的多值selectBox 我的DropDwon <div class="divright"> <select id="drp_Books_Ill_Illustrations" class="leaderMultiSelctdropdown Boo

大家好,我正在用Jquery-Select2绑定我的下拉列表。工作正常,但现在我需要使用Jquery-Select2绑定我的多值selectBox

我的DropDwon

    <div class="divright">
                        <select id="drp_Books_Ill_Illustrations" 
                            class="leaderMultiSelctdropdown Books_Illustrations" name="drp_Books_Ill_Illustrations"
                            multiple="">
                            <option value=" ">No illustrations</option>
                            <option value="a">Illustrations</option>
                            <option value="b">Maps</option>
                            <option value="c">Portraits</option>


                        </select>
                    </div>
它工作得很好,但现在我需要将所选的值放到编辑模式的下拉列表中,所以我使用这个示例

 $(".Books_Illustrations").select2("val", ["a", "c"]);
它可以工作,但我如何修正我的选择,因为用户可以选择任何东西,所以我不能静态地编写a,c,这就是为什么我需要在编辑模式下动态绑定我选择的值


我想现在你们都明白我的要求了。如果您需要进一步的许可,请告诉我

使用多选功能,如下所示

$('#drp_Books_Ill_Illustrations').multiSelect('select', 'value');

所以我认为你想要2个默认选择的选项,然后得到它的值?如果是:

要设置该值,请执行以下操作:

 $(".leaderMultiSelctdropdown").val(["a", "c"]);
还可以使用数组设置值:

var selectedValues = new Array();
selectedValues[0] = "a";
selectedValues[1] = "c";

$(".Books_Illustrations").val(selectedValues);

看看这个,它会有帮助的

var valoresArea=VALUES // it has the multiple values to set, separated by comma
var arrayArea = valoresArea.split(',');
$('#area').val(arrayArea);

URL是-

实际上,您只需要$。每个URL都可以获得所有值,这将帮助您


不需要做那么多事情。 对于使用多个选项设置的值,请选择2 var selectedvalue=“1,2,3”//如果选择前3种产品。
$('ddlProduct').val(selectedvalue)

您可以在
数组中添加所选值,并将其设置为默认选择值

例如:


试试这个,这个肯定有用

使用select2 library有两种设置值的方法
var valoresArea=VALUES
// it has the multiple values to set separated by comma
var arrayArea = valoresArea.split(',');
$('#area').select2('val',arrayArea);
1.当存在单个值时,可以将其作为字符串传递

$("#elementid").select2("val","valueTobeset")
二,。当您使用带有multiselect选项的select2时,您可以将一组值传递给select2,所有这些值都将被设置

var arrayOfValues = ["a","c"]
$("#elementid").select2("val",arrayOfValues)
请记住,也可以通过如下方式传递数组,在multiselect上设置单个值

var arrayOfValues = ["a"]
$("#elementid").select2("val",arrayOfValues)

这不管用。只有一个值是预先选择的,即使两个选项在列表中都可用,但只显示第一个
('searchproject')。选择2('val',['New Co-location','Expansion')

$('#selector').val(arrayOfValues).trigger('change')

我知道这篇文章很老了,但是select2现在的工作方式有了变化,这个问题的答案非常简单

在multi-select2中设置值的步骤如下

$('#Books_Illustrations').val([1,2,3]).change();
不再需要在jquery中指定
.select2
,只需
.val

此外,有时您可能不想触发
change
事件,因为您可能会执行一些其他代码,如果您使用上述方法,则会发生这种情况,这样您就可以在不触发
change
事件的情况下更改值

$('#Books_Illustrations').select2([1,2,3], null, false);
如果这不起作用,您也可以这样做,以不触发更改事件

$('#Books_Illustrations').select2();
$('#Books_Illustrations').val('some_value');

使用多选功能,如下所示

$('#drp_Books_Ill_Illustrations').multiSelect('select', 'value');
$(“#drp_Books_Ill_插图”).val([“val1”,“val2”).trigger(“change”)


选择全部

 $('select[name=eventsFilter]').find('option').attr('selected', true);
$('select[name=eventsFilter]').select2();
$('select[name=eventsFilter]').find('option').attr('selected', false);
  $('select[name=eventsFilter]').select2("");
取消全部收集

 $('select[name=eventsFilter]').find('option').attr('selected', true);
$('select[name=eventsFilter]').select2();
$('select[name=eventsFilter]').find('option').attr('selected', false);
  $('select[name=eventsFilter]').select2("");

你需要我的多值在编辑模式下显示我的选择值你能解释一下我想我能帮你你需要所有选择值在文本框中或在用户可以编辑的文本区域中这样,但我使用的是下拉列表而不是文本框,实际上选择2转换为与文本框一样的文本框是的,我们可以得到这样的结果,但我说的是在编辑模式下设置所选值,注意从创建模式获取值更新的答案:$(“.leaderMultiSelctdropdown”).val([“a”,“c”]);Jaminon您的代码很好,但我们如何将所选值修正为a,c,应该动态更新答案,您可以使用数组:)检查此链接可能会对您有所帮助/……。事实上,我们获取的值是字符串而不是数组,因此我使用包含检查仅筛选选定值。谢谢您的回答。但是,如果您可以添加一个描述,说明为什么您的代码块解决了这个问题,那就更好了。这是一个改进此答案和未来答案的建议。谢谢代码中有一些语法错误。例如,select2后的“.”符号-select2.(“val”,arrayOfValues))
$('#Books_Illustrations').select2([1,2,3], null, false);
$('#Books_Illustrations').select2();
$('#Books_Illustrations').val('some_value');
 $('select[name=eventsFilter]').find('option').attr('selected', true);
$('select[name=eventsFilter]').select2();
$('select[name=eventsFilter]').find('option').attr('selected', false);
  $('select[name=eventsFilter]').select2("");