通过表单提交 - Jquery Chosen获取选择列表的所有选定值

时间:2015-01-01 12:15:57

标签: jquery jquery-chosen

我正在使用Jquery Chosen插件。

我的页面上有这个多选列表。

<select name="articles_on_this_menu" multiple="multiple" data-placeholder="Choose Articles" id="articles_on_this_menu">
    <option value="27" selected="selected">Join Team</option>
    <option value="11">Faislabad</option>
    <option value="12">Peshawar</option>
    <option value="28" selected="selected">Track your Order</option>
    <option value="34" selected="selected">AboutUS2</option>
</select>

我想通过FORM submit来保存这些SELECTED值。

但提交后,我只从List中获取最后一个选定的值。

我知道我可以通过Jquery获取所有选定的值

var articles_on_this_menu= $("#articles_on_this_menu").val()

但是我想进入FORM提交....如果我articles_on_this_menu[]那么我就不会以Chosen Plugin方式获取MultiSelect列表

修改 人们在JS或Jquery解决方案中发布答案,但我已经说过,我不想使用任何JS或JQuery。我希望在Form Submit

中的Array中获取所有选定的值

4 个答案:

答案 0 :(得分:1)

已编辑的HTML代码:

 <select name="articles_on_this_menu[]" multiple="multiple" data-placeholder="Choose Articles" id="articles_on_this_menu">
        <option value="27" selected="selected">Join Team</option>
        <option value="11">Faislabad</option>
        <option value="12">Peshawar</option>
        <option value="28" selected="selected">Track your Order</option>
        <option value="34" selected="selected">AboutUS2</option>
    </select>

使用多选名称作为数组名称=“articles_on_this_menu []” 然后,您将在提交表单时获得所选选项的数组。

PHP代码:

//Array of selected articles

$selectArticles = isset($_POST['articles_on_this_menu']) 
    ? $_POST['articles_on_this_menu'] 
    : array();

答案 1 :(得分:0)

我希望这是你正在寻找的,我刚刚做了同样的任务,但出于不同的原因。

 var data = {'cat_ids[]' : []};
        $('select').find('option:selected').each(function(){                    
                data['cat_ids[]'].push($(this).val());                  

        }); 

var posting = $.post("you url here",data);
        posting.done(function( data ){
            $('ID/Class').empty().append(data);

            }); 

在您的php文件中,您可以获取内容

 print_r($_POST['cat_ids']);

答案 2 :(得分:0)

使用以下代码 - 使用:selected - selector

var selectedValueArray= []; 
$('#articles_on_this_menu :selected').each(function(i, selected){ 
  selectedValueArray[i] = $(selected).text(); 
});

答案 3 :(得分:0)

在html中使用articles_on_this_menu[]在PHP中运行良好。

如果你在后端使用python,请使用:(无需更改html) Django和request.POST.getlist('articles_on_this_menu') request.form.getlist('articles_on_this_menu')分别用于烧瓶框架。