我有这段代码:
$('#categories').change(function() {
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
});
但是如果用户选择第一个项目,我不希望它调用addRowToTable方法,因为第一个元素是“请选择一个项目...”
答案 0 :(得分:1)
好吧,我认为使用下拉列表的selectedIndex属性应该足够了:
$('#categories').change(function() {
if(this.selectedIndex!=0) {
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
}
});
当然,您可以通过jQuery选择器获得创意,但如果您目前的需求只是跳过第一项,我认为这是最简单的解决方案。
答案 1 :(得分:0)
假设“类别”是您的下拉列表的ID,您可以这样做:
$('#categories option:selected')
这应该返回下拉列表中的所有选定选项(其中有一个或者没有)。
获取所选项目的值可以这样完成:
$('#categories option:selected').val()
要查看所选项目和第一项是否相同,只需进行快速比较即可:
if ($('#categories option:selected').val() == $('#categories option:first').val())
{
//do something here
}
答案 2 :(得分:0)
如果用户只选择一个值:
假设无效值为零且所有其他选项都具有整数值:
$('#categories option:selected').change(function() {
if ($(this).val() === 0) {
return;
}
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
});