2009-11-02 234 views
0

我在一個CMS網站上工作,該網站根據ID和值隨時創建表單元素。 我需要使用鏈接從這些表單中選擇某些信息。Javascript從選擇下拉列表中選擇選項,使用href

對於收音機選項和複選框選項我使用此代碼: <a href="#" onclick="document.getElementById('RAL1').checked=true">1001</a> 這工作正常。 RAL1是我想檢查的收音機的ID。 隨着選擇的id需要由選項,這是我有問題,因爲它需要從一個ID中選擇一個值的地方。

形式創建的代碼是

<select id="Zinc_plated_field" class="inputboxattrib" name="Zinc_plated12"> 
    <option value="no">no</option> 
    <option value="yes">yes (+€871.08)</option> 
</select> 

我已經試過剛纔的一切,但沒有運氣。任何人都可以指引我走向正確的方向嗎?

謝謝!

回答

0

幾乎所有的瀏覽器支持下面的語句來得到選定值("no""yes"):

document.getElementById('Zinc_plated_field').value 

很老的瀏覽器,你將不得不使用:

var sel = document.getElementById('Zinc_plated_field'); 
sel.options[sel.selectedIndex].value; 

如果你想設置該sel ected價值,有幾種方法可以做到這一點:

document.getElementById('Zinc_plated_field').value = 'yes'; 

document.getElementById('Zinc_plated_field').options[1].selected = true; 

document.getElementById('Zinc_plated_field').selectedIndex = 1; 

後兩種使用要設置選項的索引(一個指定該索引通過設置<select>元素的selectedIndex屬性來選擇,而另一個將<option>元素的selected屬性設置爲true。)

我不能說哪一個是大多數跨瀏覽器兼容的副手,但如果第一個不起作用,就試試其他兩個。

+1

AFAICS,他要設置的值,沒有得到它。 – rjmunro 2009-11-02 08:57:57

+0

啊,對了,我更新了我的答案。 – Blixt 2009-11-02 11:20:26

+1

第一個設置器示例('.value ='yes'')適用於所有瀏覽器,並且速度非常快。但是,如果在'

0

這在Firefox & Safari的工作對我來說:

<a href="#" onclick="document.getElementById('Zinc_plated_field').value = 'yes'">yes</a> 
<a href="#" onclick="document.getElementById('Zinc_plated_field').value = 'no'">no</a>