在java中获取option元素的值
我对javascript非常陌生,我已经为此工作了几个小时。。。。我想我会问一些专家 我正在设置此javascript函数中option元素的值:在java中获取option元素的值,java,javascript,Java,Javascript,我对javascript非常陌生,我已经为此工作了几个小时。。。。我想我会问一些专家 我正在设置此javascript函数中option元素的值: function receiveAnswer(response) { var aSeats = document.getElementById("aSeats"); aSeats.options.length = 0;// clear it out for (var i = 0; i < response.aSeats.le
function receiveAnswer(response) {
var aSeats = document.getElementById("aSeats");
aSeats.options.length = 0;// clear it out
for (var i = 0; i < response.aSeats.length; i++) { // add the items back in
var option = aSeats.appendChild(document.createElement("option"));
option.value = i;
option.appendChild(document.createTextNode(response.aSeats[i]));
}
}
以下是html:
<% Venue v = (Venue)session.getAttribute("currentVenue"); %>
<% List<Conceptual_Package> cpList = Conceptual_PackageDAO.getInstance().getByVenue(v.getId()); %>
What Packages do you want to see?
<form method="post" action="ttp.actions.Sale3PackAction.action">
<select name="packid" id="packid">
<% for (Conceptual_Package cp: cpList) { %>
<option value="<%=cp.getId()%>"><%=cp.getName1()%></option>
<% } %>
</select>
<input type="button" value=" next " onclick="getSeats();"/>
</form>
<!--new-->
Available Seats:
<div>
</div>
<select name="aSeats" size="10" id="aSeats">
</select>
<input type="button" value=" add " onclick="addToCart();"/>
<div>
</div>
Selected Seats:
<form method="post" action="ttp.actions.sale4Action.action">
<select name="Seat2" size="10" id="seat2">
</select>
<input type="button" value=" remove " onclick="removeFromCart();"/>
</form>
<div>
</div>
<form method="post" action="ttp.actions.finalizeSaleAction.action">
<input type="submit" value=" Buy Tickets "/>
</form>
我想获得这个java类中这些选项元素的值:
public class finalizeSaleAction implements Action {
public String process(HttpServletRequest request, HttpServletResponse response) throws Exception {
HttpSession session = request.getSession();
Venue v = (Venue) session.getAttribute("currentvenue");
Sale s = SaleDAO.getInstance().create(GUID.generate());
if(session.getAttribute("type") == "packages"){
Conceptual_Package cp = (Conceptual_Package) request.getAttribute("cp");
List<Physical_Package> ppList = (List<Physical_Package>) request.getAttribute("seat2");
Physical_Pkg_Set pps = Physical_Pkg_SetDAO.getInstance().create(GUID.generate());
pps.setType("Phys Package Set");
pps.setDiscount(cp.getDiscount());
pps.setVenueID(v.getId());
double price = 0;
Object seatList = request.getAttribute("seat2");
您需要设置option元素的名称。提交表单时,浏览器将在查询或post数据中发送name=value 从servlet代码中,您可以通过以下方式获得该表单元素的值:
request.getParameter(name);
你可能会看到一个IE bug,它使这个问题变得复杂。见:
编辑:
如果我理解正确,您将使用JS或服务器端构建的表单可能看起来像:
<html>
<body>
<form action="blah" method="post">
<table>
<tr><td>Pink Unicorn</td><td>14.95</td></tr>
<tr><td>Sparkly Vampire</td><td>12.99</td></tr>
<tr><td colspan="2"><input type="submit" value="do it now" /></td></tr>
</table>
<input type="hidden" name="item1" value="PU1" />
<input type="hidden" name="item2" value="SV1" />
</form>
</body>
</html>
您需要设置option元素的名称。提交表单时,浏览器将在查询或post数据中发送name=value 从servlet代码中,您可以通过以下方式获得该表单元素的值:
request.getParameter(name);
你可能会看到一个IE bug,它使这个问题变得复杂。见:
编辑:
如果我理解正确,您将使用JS或服务器端构建的表单可能看起来像:
<html>
<body>
<form action="blah" method="post">
<table>
<tr><td>Pink Unicorn</td><td>14.95</td></tr>
<tr><td>Sparkly Vampire</td><td>12.99</td></tr>
<tr><td colspan="2"><input type="submit" value="do it now" /></td></tr>
</table>
<input type="hidden" name="item1" value="PU1" />
<input type="hidden" name="item2" value="SV1" />
</form>
</body>
</html>
而不是
request.getAttribute("seat2");
使用
以及从浏览器中获取选定选项元素的所有值
将以下选择标记更改为
<select name="aSeats" size="10" id="aSeats" multiple="multiple"/>
要获取select选项的所有值,请使用jQuery执行以下操作
而不是
request.getAttribute("seat2");
使用
以及从浏览器中获取选定选项元素的所有值
将以下选择标记更改为
<select name="aSeats" size="10" id="aSeats" multiple="multiple"/>
要获取select选项的所有值,请使用jQuery执行以下操作
@蒂姆·西尔维斯特对不起,我想我解释得不好。我需要从这个select元素中获取每个选项元素:请参见上面的编辑,所以我想知道如何获取所有这些选项,然后获取每个选项的值……您想要服务器端的所有选项值吗?浏览器仅发送选择选项值,因此其余选项不可用。你可以将它们作为表单中的其他输入元素发送,是的,我想这就是我需要做的。我该怎么把它写进表格里呢?实际上我认为这行不通。我使用的select元素类似于购物车类型的系统。因此,人们将项目添加到select元素,然后我需要获取所有这些添加的项目,并根据其中的值构建对象。有什么好主意吗。我没有了。如果可能的话,可以使用JS为您想要发送的所有内容创建隐藏的表单输入。称它们为“item1”…'蒂姆·西尔维斯特:对不起,我觉得我解释得不好。我需要从这个select元素中获取每个选项元素:请参见上面的编辑,所以我想知道如何获取所有这些选项,然后获取每个选项的值……您想要服务器端的所有选项值吗?浏览器仅发送选择选项值,因此其余选项不可用。你可以将它们作为表单中的其他输入元素发送,是的,我想这就是我需要做的。我该怎么把它写进表格里呢?实际上我认为这行不通。我使用的select元素类似于购物车类型的系统。因此,人们将项目添加到select元素,然后我需要获取所有这些添加的项目,并根据其中的值构建对象。有什么好主意吗。我没有了。如果可能的话,可以使用JS为您想要发送的所有内容创建隐藏的表单输入。称它们为“item1”…'什么的。
String seats= request.getParameter("selectedSeats");
String selectedSeats[] = seats.split(",");