怎么办? 我这样做但是我坚持到了开头。 我知道我必须这样做。
<strong>Select a product :</strong>
<select name="stock_name">
<c:forEach var="row" items="${Stocks.rowsByIndex}">
<c:forEach var="column" items="${row}">
<option value="<c:out value="${column}"/>"><c:out value="${column}"/></option>
</c:forEach>
</c:forEach>
</select>
然后如果我喜欢这样我内心没什么。这是放在.html中。我知道我必须把
<sql:query var="stocks" dataSource="healthds">
SELECT stockid FROM Stocks
</sql:query>`
我应该把查询放在哪里?在一个jsp ??以及如何连接它们?我真的不能得到它。 这是完整的表格
<form method="post" action="PurchaseCreate">
<p>Please enter the fields below to make your purchase</p>
<sql:query var="stocks" dataSource="healthds">
SELECT stockid FROM Stocks
</sql:query>
<strong>Select a product :</strong>
<select name="stock_name">
<c:forEach var="row" items="${Stocks.rowsByIndex}">
<c:forEach var="column" items="${row}">
<option value="<c:out value="${column}"/>"><c:out value="${column}"/></option>
</c:forEach>
</c:forEach>
</select>
</p>
<p>Quantity :
<input type="text" name="quantity">
</p>
<input type="submit" name="create" class ="button" value="Add into cart">
</form>
编辑: main.jsp中
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<html>
<head>
<title>Test Tags</title>
</head>
<body>
<h1>Reading Data</h1>
<sql:query var="stocks" dataSource="healthds">
SELECT stockid FROM Stocks
</sql:query>
<form method="post" action="Main.jsp">
<p>Please enter the fields below to make your purchase</p>
<strong>Select a product :</strong>
<select name="stock_name">
<c:forEach var="i" begin="1" end="5">
<option>Item <c:out value="${i}"/></option>
</c:forEach>
<c:forEach var="row" items="${stocks.rowsByIndex}">
<option><c:out value="${row[0]}"/></option>
</c:forEach>
</select>
</p>
<p>Quantity :
<input type="text" name="quantity">
</p>
<input type="submit" name="create" class ="button" value="Add into cart">
</form>
</body>
</html>
答案 0 :(得分:1)
如果您有stocks
这样的数据集,请使用stocks
NOT Stocks
<sql:query var="stocks" dataSource="healthds">
SELECT stockid FROM Stocks
</sql:query>`
错误
<c:forEach var="row" items="${Stocks.rowsByIndex}">
确定
<c:forEach var="row" items="${stocks.rowsByIndex}">
| |_______________ if you want it '.rowsByIndex' then 'use it' !
|_____________________ `s` NOT `S`
没有嵌套<c:forEach
<强> .rowsByIndex 强>
您只有一个数据字段:SELECT
stockid FROM Stocks
通过${row[0]}
<select name="stock_name">
<c:forEach var="row" items="${stocks.rowsByIndex}">
<option><c:out value="${row[0]}"/></option>
</c:forEach> |_________________that's rowsByIndex
</select>
没有 .rowsByIndex
<select name="stock_name">
<c:forEach var="row" items="${stocks.rows}">
<option><c:out value="${row.stockid}"/></option>
</c:forEach>
</select>
有效选择
<option value="P101">Pizza Napoli</option>
您的选择选项,例如
<option value="astockID1">astockID1</option>
如果选择visible value
和assigned value
相同,请value=
远离
<option>astockID1</option>
代码更短,更易读。
<option><c:out value="${column}"/></option>
使用 Derby sample database
表格测试的工作示例刚创建FRIENDS
的index.jsp
<%-- Document : index Created on : 13.Dez.2014, 20:34:34 --%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>Hello World!</h1>
<sql:setDataSource
url="jdbc:derby://localhost:1527/sample;user=app;password=app"
driver="org.apache.derby.jdbc.ClientDriver"
var="Derbydata"/>
<sql:query sql="SELECT * FROM APP.FRIENDS"
dataSource="${Derbydata}"
var="Friends"/>
<select name="friends_id_name">
<c:forEach var="row" items="${Friends.rowsByIndex}">
<option><c:out value="${row[0]}"/> <c:out value="${row[1]}"/></option>
</c:forEach>
</select>
</body>
</html>
输出