我有一個窗體有很多選擇菜單,其中大多數是/否,並根據選定的選項,我顯示/隱藏一些高級選項。其中一個選擇菜單如下:JavaScript如何運行onLoad和onChange相同的功能
<td><%= f.select :CBIAvailable, ['Yes' , 'No'],{}, {:id=>"cbi_available_id", :class=>"cbi_available_class", :onChange=>"showHideOptions('cbi_available_id','cbi_options_id')", :onLoad=>"showHideOptions('cbi_available_id','cbi_options_id')"} %></td>
當我從「有」到「無」或者相反,JavaScript函數將被正常調用showHideOptions改變,但我不能有函數被調用時,我重新加載表單。
任何人都可以告訴我我東錯了什麼?
感謝
UPDATE
<script language="javascript" type="text/javascript">
function showHideOptions(selectorId,optionsId) {
if (document.getElementById) {
var selector = document.getElementById(selectorId);
var options = document.getElementById(optionsId);
if (selector.value == 'Yes') {
options.style.display = 'block';
return false;
} else {
options.style.display = 'none';
return false;
}
}
window.onLoad = showHideOptions('cbi_available_id','cbi_options_id');
我不明白。當窗體被重新加載時,Onload被調用。你在期待什麼? – 2012-03-28 06:14:23
在我的情況下,:CBIAvailable ='No',所以我希望showHideOptions函數在我重新加載表單時執行,它應該顯示'No'的相關選項,但實際上表單會重新加載'Yes'選項。當我將選擇菜單更改爲「否」時,它工作正常,當我將其更改回「否」時,它也可以正常工作。問題是它沒有顯示正確的選項onload – rh4games 2012-03-28 06:23:14