Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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
Javascript 如何获取具有相同类和名称的多个选择选项的值_Javascript_Php_Select_Options_Default Value - Fatal编程技术网

Javascript 如何获取具有相同类和名称的多个选择选项的值

Javascript 如何获取具有相同类和名称的多个选择选项的值,javascript,php,select,options,default-value,Javascript,Php,Select,Options,Default Value,我正在尝试获取所选选项的值。但是,有两个不同的选择菜单,使用相同的名称和类。我希望能够将文本拉入值内 我已经知道他们选择了哪个选项,但我似乎无法得到该选项的价值 这是HTML <div id="single_course" style="display: none;"> <SELECT class="form-control" name="course_choice"> <OPTION value="1">Value 1</OPT

我正在尝试获取所选选项的值。但是,有两个不同的选择菜单,使用相同的名称和类。我希望能够将文本拉入值内

我已经知道他们选择了哪个选项,但我似乎无法得到该选项的价值

这是HTML

<div id="single_course" style="display: none;">
    <SELECT class="form-control" name="course_choice">
        <OPTION value="1">Value 1</OPTION>
        <OPTION value="2">Value 2</OPTION>
        <OPTION value="3">Value 3</OPTION>
    </SELECT>
</div>
<div id="2day_course" style="display: none;">
    <SELECT class="form-control" name="course_choice">
        <OPTION value="1">Value 1</OPTION>
        <OPTION value="2">Value 2</OPTION>
        <OPTION value="3">Value 3</OPTION>
    </SELECT>
</div>

非常感谢你的建议

首先,您无法同时获得两者的值。因此,可以将其作为数组来获取。您可以这样做:

<div id="single_course" style="display: none;">
    <SELECT class="form-control" name="course_choice[]">
        <OPTION value="1">Value 1</OPTION>
        <OPTION value="2">Value 2</OPTION>
        <OPTION value="3">Value 3</OPTION>
    </SELECT>
</div>
<div id="2day_course" style="display: none;">
    <SELECT class="form-control" name="course_choice[]">
        <OPTION value="1">Value 1</OPTION>
        <OPTION value="2">Value 2</OPTION>
        <OPTION value="3">Value 3</OPTION>
    </SELECT>
</div>
试试这个:

// array of selected options (array items are dom objects)
var course_choice = $('#register select[name=course_choice] option:selected');

// extract option's value with jquery
console.log( $(course_choice[0]).val() );
console.log( $(course_choice[1]).val() );

// ... or without query
console.log( course_choice[0].value );
console.log( course_choice[1].value );
为我工作很好:

    <SELECT class="form-control select_addon" name="course_choice[]">
    var mang_addon_cart = [];
    var course_choice = $('.select_addon option:selected');
    for(var i = 0; i < course_choice.length; i++){
        var val_addon = course_choice.eq(i).val();
        var name_addon = course_choice.eq(i).data('name');
      mang_addon_cart.push({
        giatri : val_addon,
        name : name_addon
      });
    }
    console.log(mang_addon_cart);

var mang_addon_cart=[];
var course_choice=$('.select_addon option:selected');
对于(变量i=0;i
您不能更改他们的姓名吗?可以-我可以更改他们的姓名。我只是想找出最简单的方法@我可以访问所有的代码,所以如果你有建议,请发布它。ThanksI只是想知道,如果他们有不同的名字会更容易,因为你可以分别引用他们。然而,下面贴出的答案可以绕过这个问题。好的。所以,如果我把名字分开,那么我上面的代码会起作用吗@我相信是这样;此外,类通常用于将相似的事物分组在一起(正如您所做的),但名称对于每个元素通常是唯一的。它现在不起作用的原因是因为
name=“course\u choice”
引用了两个元素,这就是sjkm下面的答案起作用的原因:它选择了引用的两个对象中的每一个。请不要copy@sjkm对不起,没有别的办法了。我的回答将归功于你,这取决于你。你不需要。但是把它放进去并不重要。给出了相同的结果@KingOptimizer!如果将其显示为PHP文件,则它将作为数组显示。也就是说,
course\u choice=>Array(2,3)
。像这样的东西!当我使用你的代码时,它显示数组@恶作剧
var course_choices = $('select[name="course_choice"]');

var course_choice1 = course_choices.eq(0).val();
var course_choice2 = course_choices.eq(1).val();
// array of selected options (array items are dom objects)
var course_choice = $('#register select[name=course_choice] option:selected');

// extract option's value with jquery
console.log( $(course_choice[0]).val() );
console.log( $(course_choice[1]).val() );

// ... or without query
console.log( course_choice[0].value );
console.log( course_choice[1].value );
    <SELECT class="form-control select_addon" name="course_choice[]">
    var mang_addon_cart = [];
    var course_choice = $('.select_addon option:selected');
    for(var i = 0; i < course_choice.length; i++){
        var val_addon = course_choice.eq(i).val();
        var name_addon = course_choice.eq(i).data('name');
      mang_addon_cart.push({
        giatri : val_addon,
        name : name_addon
      });
    }
    console.log(mang_addon_cart);