PHP-获取multi-select的未选择值
我正在使用multi-select为用户保存他们最喜欢的网站。 不幸的是,我无法发布图像,应用程序无法在线工作。我将尝试解释multi-select是如何显示的: 左框(带有未选择的值) 右框(带有选定的值) 用户可以从左到右添加值,这很好。但当它们保存时,我只能获得新的选定值。先前选择的值不会传递给表单处理器。这样,我也无法确定是否从右列中删除了值。我希望左侧框中的所有值也被发布。然后我知道哪些值可以在数据库中“取消选择” 从左框中选择值时,该值将从此框中消失并显示在右框中 这是表单的外观:PHP-获取multi-select的未选择值,php,jquery,html,multi-select,Php,Jquery,Html,Multi Select,我正在使用multi-select为用户保存他们最喜欢的网站。 不幸的是,我无法发布图像,应用程序无法在线工作。我将尝试解释multi-select是如何显示的: 左框(带有未选择的值) 右框(带有选定的值) 用户可以从左到右添加值,这很好。但当它们保存时,我只能获得新的选定值。先前选择的值不会传递给表单处理器。这样,我也无法确定是否从右列中删除了值。我希望左侧框中的所有值也被发布。然后我知道哪些值可以在数据库中“取消选择” 从左框中选择值时,该值将从此框中消失并显示在右框中 这是表单的外观:
<select multiple name="main_categories_1[]" class="multiselect" id="select1">
<option value="26">SAP</option>
<option value="29">SEO</option>
<option value="22">Servicemanager</option>
<option value="28">SharePoint</option>
<option value="34">Stages</option>
<option value="6">Systeembeheerder</option>
<option value="5">Tester</option>
<option value="31">UIDesigner</option>
<option value="35">Zend Dev</option>
</select>
即使你解决了它。。。但是,为了多样性,您可以尝试以下代码:
var selected = [];
var noselected = [];
$(document).on('click', '#button', function (){
$.each($('#select2 option'), function (key, value) {
if (!$(this).prop('selected')) {
noselected[key] = $(this).val();
//alert($(this).val());
} else {
selected[key] = $(this).val();
//alert($(this).val());
}
});
});
这样您可以得到两个数组,一个带有选定值,另一个带有未选定值
这是一个。即使你解决了它。。。但是,为了多样性,您可以尝试以下代码:
var selected = [];
var noselected = [];
$(document).on('click', '#button', function (){
$.each($('#select2 option'), function (key, value) {
if (!$(this).prop('selected')) {
noselected[key] = $(this).val();
//alert($(this).val());
} else {
selected[key] = $(this).val();
//alert($(this).val());
}
});
});
这样您可以得到两个数组,一个带有选定值,另一个带有未选定值
这是一个。难道您的服务器上没有所有的值吗?所有的值都在数据库中,为什么?为什么您要从客户端获取这些值?如果您有5个选择A-E,并且用户选择了B和D。用户没有选择的值是什么?您只是要求multiselect执行它不是为之设计的作业。要使其正常工作,请在提交时使用一些javascript,它将选择右侧multiselect中的所有项目,然后将它们传递到服务器。难道服务器上没有所有值吗?所有值都在数据库中,为什么?为什么你想从客户端得到它们?如果你有5个选择A-E,而用户选择了B和D。用户没有选择的值是什么?你只是要求multiselect做一项它不是为之设计的工作。要使其工作,请在提交时使用一些javascript,它将选择右侧multiselect中的所有项目,然后将它们传递到服务器