java - 如何在javascript中动态加载选择选项值

标签 java javascript struts

我正在使用 java + struts。

我正在创建动态表行并动态加载到选择选项值 使用 javascript 我的代码是。

function addRow() {

        var table = document.getElementById('tableID');
        var rowCount = table.rows.length;
        var countval = rowCount;
        var row = table.insertRow(rowCount);

        //country

        var cell1 = row.insertCell(0);
        var element1 = document.createElement("select");
        element1.style.width = "250px";
        element1.id = "countryId" + countval;

        var o = document.createElement('option');
        o.value = "0";
        o.text = "[SELECT]";
        element1.options.add(o);
        cell1.appendChild(element1);

        var o = document.createElement('option');
        o.value = "1";
        o.text = "India";
        element1.options.add(o);
        cell1.appendChild(element1);

}

这是html代码:

<input type="button" value="add" onclick="addRow()">
<table id="tableID"></table>

加载选择选项值在 struts 标签上工作这是有效的:

<html:select property="countryId">
   <html:optionsCollections name="countryForm" property="countryList" value="countryId" label="countryName"/>
</html:select>

上面这段代码有效,但我需要使用 javascript 使用选择选项值的相同逻辑。我如何加载国家/地区值。请任何人帮助我,谢谢并提前

最佳答案

我不明白为什么要创建动态选择,即使它是使用Struts标签解决的。
但是,如果您需要它,我可以向您推荐一种在 Javascript 中嵌入 struts 逻辑的非推荐方式。
喜欢;

function addRow(){
    alert("inside addRow");
    var list = new Array();
    var value = new Array();
    var i = 0;
    <logic:iterate name="countryForm" property="countryList" id="country">
      list[i] = '<bean:write name="country" property="countryName" />';
      value[i] = '<bean:write name="country" property="countryId" />';
      i++;
    </logic:iterate>

    var table = document.getElementById('tableID');
    var rowCount = table.rows.length;
    var countval = rowCount;
    var row = table.insertRow(rowCount);

    //country

    var cell1 = row.insertCell(0);
    var element1 = document.createElement("select");
    element1.style.width = "250px";
    element1.id = "countryId" + countval;

    var o = document.createElement('option');
    o.value = "0";
    o.text = "[SELECT]";
    element1.options.add(o);
    cell1.appendChild(element1);

    for(i=0; i<list.length; i++){
        var item = document.createElement('option');
        item.value = value[i];
        item.text = list[i];
        element1.options.add(item);
        cell1.appendChild(element1);
    }
}

关于java - 如何在javascript中动态加载选择选项值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25513305/

相关文章:

java - Marshall 具有 OnetoMany 关系的 hibernate pojo 类

Java正则表达式从字符串中获取单词

javascript - 跨浏览器 javascript 加载回调 : Is there a better way than using iframes?

javascript - 在移动到另一个 Google Sheet 之前将数据插入 foreach 数组

java - 如何访问Action或dispatch action类中action标签(struts-config.xml)的path属性?

java - Struts 1.2.9 重新加载application.properties

java - 在 Double 中逗号后只有三个数字

Java OOPS parking 场示例设计

javascript - 仅显示来自点击链接的内容并隐藏所有 sibling

java - Struts 2 中的重定向