如何获取文本 servlet中的标记

问题描述 投票:0回答:2

我在索引页面中选择了。它看起来像下面

<div id="dropdown" class="input-group" style="width:50%">
                    <select class="form-control" id="select2" name="select2" onchange="javascript:document.form1.submit();" style="width : 250px">
                        <option value="C:/path1" >option 1/option>
                        <option value="C:/path2" >option 2</option>
                        <option value="C:/path3" >option 3</option>
                        <option value="C:/path4" >option  4</option>
                        <option value="C:/path5" >option  5</option>
                        <option value="C:/path6" >option 6</option>
                    </select> 
                </div>

我需要“Value”属性的值,即“C:/ path1”,我可以使用它在Servlet中获取

String value= request.getParameter("select2");

现在我需要在标签之间获取文本,即我需要“选项1”或基于选择的任何内容。我该怎么做。请帮助。提前致谢 :)

jsp select servlets request html-select
2个回答
1
投票

如果你想要选项标签,你只能使用表单来选择value,然后你需要编写额外的逻辑来将数据发送到服务器。

<div id="dropdown" class="input-group" style="width:50%">
    <input type="hidden" name="selectedLabel" id="selectedLabel">
    <select class="form-control" id="select2" name="select2" onchange="javascript:getSelectedLabel(this);" style="width : 250px">
       <option value="C:/path1" >option 1/option>
       <option value="C:/path2" >option 2</option>
       <option value="C:/path3" >option 3</option>
       <option value="C:/path4" >option  4</option>
       <option value="C:/path5" >option  5</option>
       <option value="C:/path6" >option 6</option>
    </select> 
</div>

JS:使用此功能可以将选项标签设置为隐藏字段,隐藏字段将与表单数据一起发送。

function getSelectedLabel(sel) {
    document.getElementById("selectedLabel").value = sel.options[sel.selectedIndex].text;
    document.form1.submit();
}

服务器端:

String value= request.getParameter("select2");
String label = request.getParameter("selectedLabel"); 

0
投票

这里简单快捷的解决方案。

试试这个

<select class="form-control" id="select2" name="select2" onchange="javascript:document.form1.submit();" style="width : 250px">
                    <option value="C:/path1_option 1" >option 1/option>
                    <option value="C:/path2_option 2" >option 2</option>
</select>

如果您将数据发送到这样的servlet(路径+选项文本),您可以通过request.getParameter()方法获取数据并使用java代码拆分数据。

String value= request.getParameter("select2");
String vals[]  = value.split("_",0);

for(String v : vals){
    System.out.println(v);
}

所以,你可以得到这两个值....

© www.soinside.com 2019 - 2024. All rights reserved.