Javascript JSP:如何将下拉列表的所有(选中和未选中)选项传递给servlet?
我的JSP web应用程序中有一个下拉列表,我使用JavaScript代码从输入文本中添加和删除项目。现在,我想使用submit按钮将下拉列表中的所有(选中和未选中)项传递给servlet。我该怎么做? 以下代码仅返回所选项目的值:Javascript JSP:如何将下拉列表的所有(选中和未选中)选项传递给servlet?,javascript,jsp,servlets,dropdown,Javascript,Jsp,Servlets,Dropdown,我的JSP web应用程序中有一个下拉列表,我使用JavaScript代码从输入文本中添加和删除项目。现在,我想使用submit按钮将下拉列表中的所有(选中和未选中)项传递给servlet。我该怎么做? 以下代码仅返回所选项目的值: String ST=request.getParameter("friendList"); 我的HTML和JavaScript代码: <form class="form" action="project" method="post"> <inpu
String ST=request.getParameter("friendList");
我的HTML和JavaScript代码:
<form class="form" action="project" method="post">
<input type="text" id="In_Name" placeholder="my new friend's name"/>
<div class="addIcon" onclick="addFriend()"></div>
<div class="removeIcon" onclick="removeFriend()"></div>
<select size="5" name="friendList" id="friendList">
</select>
<button type="submit" name="MyButton">Submit</button>
</form>
<script>
function addFriend() {
var Str=document.getElementById("In_Name").value;
if(Str!="")
{
var opt = document.createElement("option");
opt.text = Str;
opt.value = Str;
document.getElementById("friendList").options.add(opt);
}
}
function removeFriend() {
var x = document.getElementById("friendList");
if(x.selectedIndex != "-1")
x.remove(x.selectedIndex);
}
</script>
提交
函数addFriend(){
var Str=document.getElementById(“In_Name”).value;
如果(Str!=“”)
{
var opt=document.createElement(“选项”);
opt.text=Str;
opt.value=Str;
document.getElementById(“friendList”).options.add(opt);
}
}
函数removeFriend(){
var x=document.getElementById(“friendList”);
如果(x.selectedIndex!=“-1”)
x、 移除(x.selectedIndex);
}
我想使用submit按钮将下拉列表中的所有(选中和未选中)项传递给servlet
浏览器将只传递选定的选项,要发送所有选项,请使用multiple
属性。此外,在提交表单之前,您还需要一个方便的脚本来选择所有选项
servlet中的更改:
String[]ST=request.getParameterValues("friendList");
JSP更改:
<form class="form" action="project" method="post" onsubmit="selectAll('friendList')">
....
<select size="5" name="friendList" id="friendList" multiple=''></select>
....
</form>
<script>
...
function selectAll(id){
var options = document.getElementById(id).options;
var len = options.length;
while(len --){
options[len].selected = true;
}
}
</script>
....
....
...
功能selectAll(id){
var options=document.getElementById(id).options;
var len=options.length;
而(len--){
选项[len]。所选选项=true;
}
}
您已经使用了name属性,所以只需在servlet中添加一行即可。并向jsp文件“multiple”添加一个属性
用法:字符串值[]=request.getParameterValues(“friendList”) 大家好,欢迎来到SO:)为了帮助其他人理解您的问题,请添加一个简单的代码示例来澄清您的问题。谢谢