获取多个select个菜单的合并值jQuery
Get the combined value of multiple select menus jQuery
正在使用车辆进行项目select或者。这个想法是用户 select 从 select 菜单中输入他们的制造商、型号和年份,当他们单击添加按钮时,它会将三者的组合值(按特定顺序)添加到相邻的无序列表。
我刚刚开始学习如何收集表单控件的值。我认为我走在正确的轨道上,但我不完全在那里。当我单击添加时,它会添加一个值为 "object Object".
的列表项
这是我的 js:
$('.vehicle-select button').click(function (e){
var make = $( "#make option:selected" ).text();
var model = $( "#model option:selected" ).text();
var year = $( "#year option:selected" ).text();
var carName = $(year + make + model);
$('.my-brands').prepend('<li>' + carName + '</li>');
});
https://jsfiddle.net/tactics/rcbc6908/
理想情况下,如果用户不能 select 每个 select 中的第一个选项,我会喜欢它,否则他们可以添加值为 "Choose Year Choose Make Choose Model" 的车辆。
感谢任何帮助。
您不需要在串联前后加上 $()。
它应该看起来像
var carName = year + make + model;
而不是
var carName = $(year + make + model);
原因是年份和型号都表示为字符串,因此 + 运算符将按原样连接它们。由于 + 运算符的连接不是 jQuery 功能,因此您不需要将其包装在 $().
中
这是因为当您包含 $
时,您正在根据所选值创建一个新的 jquery 对象。使用这个:
var carName = year + " " + make + " " + model;
而不是
var carName = $(year + make + model);
如果你想使用$
,你可以这样做:
var carName = $('<li>' + year + " " + make + " " + model + '</li>');
$('.my-brands').prepend(carName);
使用这个:
var carName =[year,make,model].join(' ');
正在使用车辆进行项目select或者。这个想法是用户 select 从 select 菜单中输入他们的制造商、型号和年份,当他们单击添加按钮时,它会将三者的组合值(按特定顺序)添加到相邻的无序列表。
我刚刚开始学习如何收集表单控件的值。我认为我走在正确的轨道上,但我不完全在那里。当我单击添加时,它会添加一个值为 "object Object".
的列表项这是我的 js:
$('.vehicle-select button').click(function (e){
var make = $( "#make option:selected" ).text();
var model = $( "#model option:selected" ).text();
var year = $( "#year option:selected" ).text();
var carName = $(year + make + model);
$('.my-brands').prepend('<li>' + carName + '</li>');
});
https://jsfiddle.net/tactics/rcbc6908/
理想情况下,如果用户不能 select 每个 select 中的第一个选项,我会喜欢它,否则他们可以添加值为 "Choose Year Choose Make Choose Model" 的车辆。
感谢任何帮助。
您不需要在串联前后加上 $()。
它应该看起来像
var carName = year + make + model;
而不是
var carName = $(year + make + model);
原因是年份和型号都表示为字符串,因此 + 运算符将按原样连接它们。由于 + 运算符的连接不是 jQuery 功能,因此您不需要将其包装在 $().
中这是因为当您包含 $
时,您正在根据所选值创建一个新的 jquery 对象。使用这个:
var carName = year + " " + make + " " + model;
而不是
var carName = $(year + make + model);
如果你想使用$
,你可以这样做:
var carName = $('<li>' + year + " " + make + " " + model + '</li>');
$('.my-brands').prepend(carName);
使用这个:
var carName =[year,make,model].join(' ');