2014-07-10 102 views
0

所以我有一個下拉菜單。此下拉菜單的ID是「課程」。此下拉菜單還有一個附加屬性,onclick="displayField();根據下拉菜單選擇顯示/隱藏

該下拉列表有2個選項。

2和3

現在,我想用類rsform-block-cotecours1取決於選擇的選項上被隱藏的一切。

這裏是JavaScript爲:

function displayField() 
{ 
    if(document.getElementById("courses").text == '2';) 
    document.getElementsByClassName('rsform-block-cotecours1').style.display="none"; 

    if(document.getElementById("courses").text == '3';) 
    document.getElementsByClassName('rsform-block-cotecours1').style.display=""; 
} 


window.addEvent('domready', function() { 
displayField(); 
}); 

但是,這並不工作,我不知道爲什麼。

+0

它應該是的document.getElementById( 「課程」)價值 –

+0

並且還document.getElementsByClassName(..)返回數組因此你應該寫document.getElementsByClassName('rsform-b​​lock-cotecours1')[0] .style.display ='none'; –

+0

我正在使用一個插件,它不允許我爲下拉列表賦值,所以我必須使用document.getElementById(「courses」)。text –

回答

1

這是你在找什麼?

小提琴:fiddle

<select id="courses" onchange="ddlChange()"> 
    <option value="2">2</option> 
    <option value="3">3</option> 
</select> 

的JavaScript

function ddlChange() { 

    if (document.getElementById("courses").value =="2"){ 
     document.getElementsByClassName('rsform-block-cotecours1')[0].style.display="none"; 
     alert(document.getElementById("courses").value); 
    }  
    if (document.getElementById("courses").value == "3"){ 
     document.getElementsByClassName('rsform-block-cotecours1')[0].style.display="block"; 
     alert(document.getElementById("courses").value); 
    }  
} 
0

變化

function displayField() 
{ 
    if(document.getElementById("courses").value == '2';) 
    document.getElementsByClassName('rsform-block-cotecours1')[0].style.display="none"; 

    if(document.getElementById("courses").value == '3';) 
    document.getElementsByClassName('rsform-block-cotecours1')[0].style.display=""; 
} 


window.addEvent('domready', function() { 
displayField(); 
}); 

的情況下,你要訪問的分機和JavaScript的下拉列表中沒有值的代碼,以跟蹤和測試,然後使用下面的代碼從接接入選擇選項的文本下來

var courseElement = document.getElementById("courses"); 
var text = ""; 
if (courseElement.selectedIndex != -1) 
{ 
    text = courseElement.options[courseElement.selectedIndex].text; 
} 
+0

不起作用。我無法操作下拉項目的值,只能操作其文本。然而,我嘗試了兩種都沒有工作。 –

+0

您是否嘗試過調試應用程序?嘗試提醒並檢查它無法工作的地方 –

相關問題