0

我正在使用 Struts2 框架。我想更改<s:select>使用 javascript 的标头值。

这是我的代码:

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

2 回答 2

1

只需select通过 id 获取您的元素并更改 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";
于 2012-12-11T11:55:35.533 回答
0

即使我尝试过这样做,我也知道我们无法设置<s:select>使用 javascript 的标头值。在页面加载时,即在页面的DOM结构创建时,<s:select>展开和headerkey和header value形成select标签的option-name部分。您可以在页面源中查看它。但是,您可以通过某种方式将选择列表设置为某个默认值。要为下拉框自动选择默认值,只需在标签中声明一个“值”属性,并相应地设置默认值。

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" />
于 2012-12-18T12:03:04.650 回答