如何从隐藏输入填充多 select 输入,反之亦然?
How to fill a multi select input from a hidden input and vice versa?
所以我有一个使用此 http://www.phpkobo.com/address_book.php. I also setup Select2 which is a jquery plugin that manages multiple select inputs https://select2.github.io/examples.html 设置的地址簿工具。
所以这个地址簿工具不允许你设置多 select 输入所以我不得不通过创建一个多 select 输入然后复制你的 [=24] 来解决这个问题=]ed 输入到隐藏输入。使用下面的脚本,我设法将 selected 项目自动复制到我的隐藏输入中。
function loopSelected()
{
var txtSelectedValuesObj = document.getElementById('hidden_input');
var selectedArray = new Array();
var selObj = document.getElementById('selected_items');
var i;
var count = 0;
for (i=0; i<selObj.options.length; i++) {
if (selObj.options[i].selected) {
selectedArray[count] = selObj.options[i].value;
count++;
}
}
txtSelectedValuesObj.value = selectedArray;
}
所以这个脚本工作得很好,但是,问题是当我编辑一个条目时,我的多 select 输入是空的,因为所有数据都保存在隐藏的输入中。我想弄清楚如何用隐藏输入中已有的数据填充 multi select 输入,反之亦然?
如有任何帮助,我们将不胜感激。
这是我的工作示例:
https://jsfiddle.net/akhyp/1956/
通过此线程获得了一些帮助
这是按预期工作的最终产品:http://jsfiddle.net/akhyp/1966/
$("#txt").bind('keyup' , function(e){
var ar = $(this).val().split(",");
$("#sel option").each(function(){
if(ar.indexOf($(this).val()) != -1)
$(this).attr("selected","selected");
});
});
$('#sel').change(function(){
$('#txt').val($('#sel').val());
});
所以我有一个使用此 http://www.phpkobo.com/address_book.php. I also setup Select2 which is a jquery plugin that manages multiple select inputs https://select2.github.io/examples.html 设置的地址簿工具。
所以这个地址簿工具不允许你设置多 select 输入所以我不得不通过创建一个多 select 输入然后复制你的 [=24] 来解决这个问题=]ed 输入到隐藏输入。使用下面的脚本,我设法将 selected 项目自动复制到我的隐藏输入中。
function loopSelected()
{
var txtSelectedValuesObj = document.getElementById('hidden_input');
var selectedArray = new Array();
var selObj = document.getElementById('selected_items');
var i;
var count = 0;
for (i=0; i<selObj.options.length; i++) {
if (selObj.options[i].selected) {
selectedArray[count] = selObj.options[i].value;
count++;
}
}
txtSelectedValuesObj.value = selectedArray;
}
所以这个脚本工作得很好,但是,问题是当我编辑一个条目时,我的多 select 输入是空的,因为所有数据都保存在隐藏的输入中。我想弄清楚如何用隐藏输入中已有的数据填充 multi select 输入,反之亦然?
如有任何帮助,我们将不胜感激。
这是我的工作示例: https://jsfiddle.net/akhyp/1956/
通过此线程获得了一些帮助
这是按预期工作的最终产品:http://jsfiddle.net/akhyp/1966/
$("#txt").bind('keyup' , function(e){
var ar = $(this).val().split(",");
$("#sel option").each(function(){
if(ar.indexOf($(this).val()) != -1)
$(this).attr("selected","selected");
});
});
$('#sel').change(function(){
$('#txt').val($('#sel').val());
});