簡體   English   中英

更改struts2的標頭值屬性<s:select>

[英]change the header value attribute of a struts2 <s:select>

我正在使用Struts2框架。 我想使用JavaScript更改<s:select>的標頭值。

這是我的代碼:

<s:select label="Select Table" name="tableCheck" id="tableCheck" list="%{queryTableDisplay}" cssStyle="WIDTH:152px" headerKey="-1" headerValue="-- Select --"/>

只需通過ID獲取您的select元素並更改javascript中的值即可。

// changes option value attribute
document.getElementById("tableCheck").options[0].value = "new_header_key";
// changes option inner HTML
document.getElementById("tableCheck").options[0].innerHTML = "new_header_value";

即使是我嘗試做的事情,我也知道我們無法使用javascript設置標頭值<s:select> 在頁面加載時,即在頁面的DOM結構創建上, <s:select>展開,並且headerkey和header值形成select標記的選項名部分。您可以在頁面源代碼中查看它。 但是,有一種方法可以將選擇列表設置為某些默認值。 要為下拉框自動選擇默認值,只需在標記中聲明一個“ value”屬性,然后相應地設置默認值即可。

JAVA文件

public class SelectAction extends ActionSupport{

private List<String> searchEngine;
    private String yourSearchEngine;
//set default value
    public String getDefaultSearchEngine() {

        return "yahoo.com";
    }
  public SelectAction(){    
        searchEngine = new ArrayList<String>();
        searchEngine.add("google.com");
        searchEngine.add("bing.com");
        searchEngine.add("yahoo.com");
        searchEngine.add("baidu.com");
    }
    //...
}

JSP

<s:select label="What's your favor search engine" 
        headerKey="-1" headerValue="Select Search Engines"
        list="searchEngine" 
        name="yourSearchEngine" 
        value="defaultSearchEngine" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM