获取多个选择菜单jQuery的组合值

时间:2015-04-30 01:17:50

标签: jquery var

使用车辆选择器处理项目。这个想法是用户从选择菜单中选择他们的品牌,型号和年份,当他们点击添加按钮时,它会将三者(按特定顺序)的组合值添加到相邻的无序列表中。

我刚刚开始学习如何收集表单控件的值。我想我走在正确的轨道上,但我不在那里。当我单击添加时,它会添加一个列表项,其值为“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/

理想情况下,我希望如果用户无法在每个选择中选择第一个选项,否则他们可以添加值为“选择年份选择选择模型”的车辆。

感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

这是因为当您包含var carName = $(year + make + model);时,您正在从所选值创建新的jquery对象。使用此:

$

而不是

 var carName = year + " " + make + " " + model;  

如果您想使用 var carName = $(year + make + model); ,可以这样做:

$

答案 1 :(得分:0)

This is the updated documentation

你不需要放一个$(围绕你的连接)。

应该看起来像

y

而不是

var carName = year + make + model;

原因是年份和模型被表示为字符串,因此+运算符将按原样连接它们。由+运算符引起的串联不是jQuery功能,因此您不需要将其包装在$()中。

答案 2 :(得分:0)

使用此:

var carName =[year,make,model].join(' ');