0

我正在使用 JSP 创建一个应用程序。在其中一个页面中,用户需要输入一些症状。现在我想给一个按钮。当用户单击此按钮时,将创建一个新的选择框。

我搜索了很多,只能找到如何动态添加选项来选择,但我想要新的选择框

有人请帮忙。

4

2 回答 2

2

这是一个示例代码:

<html>
  <head>
    <script type="text/javascript">
        function addSelectBox ()
        {
            var parentDiv = document.getElementById ("main");
            var selectElement = document.createElement ("select");
            for (var i=0;i < 5;i++)
            {
                var option = new Option ("Text " + i, "Value" + i);
                selectElement.options[selectElement.options.length] = option;
            }
            parentDiv.appendChild (selectElement);
        }
    </script>
  </head>
  <body>
    <div id="main">
        <input type="button" onclick="addSelectBox ()" name="clickme" value="Add Select Box" />
    </div>
  </body>
</html>

编辑:

对于 JSP(如果您在 ArrayList 中有选项):

    <html>
      <head>
<%
      int totalElements = 5;
      ArrayList r = new ArrayList (totalElements);
      for (int i=1;i <= totalElements;i++)
      {
         r.add (String.valueOf (i));
      }
%>
        <script type="text/javascript">
            function addSelectBox ()
            {
                var parentDiv = document.getElementById ("main");
                var selectElement = document.createElement ("select");
                var option;
<%
                for (int i=0;i <= r.size();i++)
                {
%>
                    option = new Option ('<%=r.get (i)%>', '<%=r.get (i)%>');
                    selectElement.options[selectElement.options.length] = option;
<%
                }
%>
                parentDiv.appendChild (selectElement);
            }
        </script>
      </head>
      <body>
        <div id="main">
            <input type="button" onclick="addSelectBox ()" name="clickme" value="Add Select Box" />
        </div>
      </body>
    </html>
于 2013-03-20T17:22:44.150 回答
0
$(".your-button").click(function() {
    var selectBoxHtml = ["<select>"];
    var sourceItems = [4,5,6];
    for (var sourceIndex = 0; sourceIndex < sourceItems.length; sourceIndex++) {
        selectBoxHtml.push('<option value="' + sourceIndex + '">' + sourceItems[sourceIndex] + '</option');
    }
    $(this).after(selectBoxHtml.join("") + "</select>");
});

一旦 sourceItems 是动态的,请务必转义它。

于 2013-03-20T17:13:53.980 回答