部落客廣告聯播

2007年6月7日 星期四

JavaScript技巧:判斷多選的select選單是否有值被選取

JavaScript技巧:判斷多選的select選單是否有值被選取
假設我在HTML中有一表單項如下:

<select name="lstProductLine" id="lstProductLine" multiple size="4">
<option value="" >Select items below</option>
<option value="1000" selected>1000</option>
<option value="2000" selected>2000</option>
<option value="3000" selected>3000</option>
<option value="4000" selected>4000</option>
<option value="4100" selected>4100</option>
<option value="4300" selected>4300</option>
<option value="7010" selected>7010</option>
<option value="7020" selected>7020</option>
<option value="7030" selected>7030</option>
</select>

注意select標籤的multiple屬性代表可做多選。
如今,我想在表單submit之前,先檢查使用者是否至少有選取一到多項的值,可使用如下程式碼來判斷:
function btnSave_onclick()
 {
   if(isValueSelectedInLstBox(document.getElementById('lstProductLine')))
    { //submit }
 }
function isValueSelectedInLstBox(selectObj)
{
 for(var i=0;i<selectObj.options.length;i++)
   { if(selectObj.options[i].selected==true)
    { if(selectObj.options[i].value!='') return true; }
   }
return false;
}

恩,用來驗證表單非常實用。

沒有留言: