2010-11-10 175 views
-1

這個代碼製作組合框。保持以前的狀態

public String getColor(String colorName) 
{ 
mySB.append("<select onchange=\"ChangeColor(this);\" style=\"font-size:0.8em;\" id=\"").append(colorName).append("\" name=\"").append(colorName).append("\">") 
      .append("<option value=\"\">&nbsp;</option>"); 
} 
function ChangeColor(colors) { 
var partcolor = (colors.options[colors.selectedIndex].value); 

if (partcolor=="black"){ 
    document.getElementById("colorRow").style.backgroundColor = 'black'; 
} 
else if(partcolor=="brown") { 
document.getElementById("colorRow").style.backgroundColor ='brown'; 
} else if(partcolor=="yellow") { 
document.getElementById("colorRow").style.backgroundColor ='yellow'; 
} 

}

我要動態更新使用JavaScript組合框顏色選擇。當頁面重新加載時,之前的顏色狀態可以在Java應用程序中保留。

+1

對不起,這是什麼語言? – deceze 2010-11-10 06:08:38

+0

那麼,它肯定不是Javascript,所以這個問題並沒有太大的意義。 – deceze 2010-11-10 06:11:05

+3

這是發佈包含JavaScript的HTML的Java代碼。 – cdhowie 2010-11-10 06:18:10

回答

0

您提到頁面加載,所以一個選項是將顏色選擇保存在查詢參數中,即使瀏覽器使用包含顏色選擇的URL在ChangeColor()中重新加載同一頁面,如下所示:http://...myurl...?color=purple,然後在onLoad()期間檢查URL參數。

根據您的設計,您可能只需使用JavaScript動態更新顏色選擇而無需重新加載頁面?

像這樣:

<div id="to_update_later"></div> 

<script> 
    function ChangeColor(color) { 
     document.getElementById("to_update_later").innerText = "The color " + color; 
    } 
</script> 

這個例子說明如何動態地從一個JavaScript函數替換div標籤的內容。也可以追加而不是替換。有關操縱網頁的HTML DOM對象的教程,請參見例如http://www.w3schools.com/js/js_ex_dom.asp

+0

是的,先生,我想動態更新顏色選擇。 – singh 2010-11-10 06:24:23

+0

我用動態更新示例 – 2010-11-10 07:09:51

+0

更新了答案,請查看我的代碼。 – singh 2010-11-10 07:50:39