我遇到这个jsp scriptlet的问题,我不知道为什么它没有运行它
给出空指针异常
可能是什么原因:
//p is a product object which i previously stored in session as //attribute
<% Product p = (Product)request.getAttribute("product");%>
for (var row =1; row <= 1; row++) {
for (var col = 0; col < 5; col++) {
if(row == 1 && col == 1){
$('#tbl').children().children()[row].children[col].innerHTML = <%=p.getProductCode()%>
}
}
}
//this line below is trying to set table's cell value to the one of properties of that product object
$('#tbl').children().children()[row].children[col].innerHTML = <%= p.getProductCode()%>
答案 0 :(得分:0)
原因可能是Product p
为空,请通过输出<%= p %>
进行检查。
答案 1 :(得分:0)
您可以完全避免使用scriptlet。即使产品不是null,我也会期望你的innerHTML赋值中的javascript错误,因为值周围没有引号,这是页面上的字符串文字。如果NullPointerException
继续,请将您将产品对象设置的代码发布到请求中。
for (var row =1; row <= 1; row++) {
for (var col = 0; col < 5; col++) {
if(row == 1 && col == 1){
$('#tbl').children().children()[row].children[col].innerHTML = '${requestScope.product.productCode}';
}
}
}
$('#tbl').children().children()[row].children[col].innerHTML = '${requestScope.product.productCode}';