[英]how to tell is user selected the first index in a combobox in javascript
我有這個代碼:
$('#categories').change(function() {
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
});
但是我不希望用戶選擇第一個項目時調用addRowToTable方法,因為第一個元素說“請選擇一個項目...”。
好吧,我認為使用下拉列表的selectedIndex屬性就足夠了:
$('#categories').change(function() {
if(this.selectedIndex!=0) {
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
}
});
您當然可以通過jQuery選擇器來發揮創造力,但是如果您當前的需要只是跳過第一項,那么我認為這是最簡單的解決方案。
假設“類別”是您的下拉列表的ID,您可以這樣操作:
$('#categories option:selected')
這應該返回下拉列表中的所有選定選項(其中一個或全部都不存在)。
可以按以下方式獲取所選項目的值:
$('#categories option:selected').val()
要查看所選項目和第一個項目是否相同,只需進行快速比較即可:
if ($('#categories option:selected').val() == $('#categories option:first').val())
{
//do something here
}
如果用戶僅選擇一個值:
假設無效值為零,並且所有其他選擇均具有整數值:
$('#categories option:selected').change(function() {
if ($(this).val() === 0) {
return;
}
var myCars = new Array("Saab", "Volvo", "BMW");
addRowToTable(this.value, myCars);
$('#listings').hide();
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.