0

我遇到了这个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()%>
4

2 回答 2

0

您可以相当轻松地完全避免使用 scriptlet。即使产品不为空,我也希望您的 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}';
于 2013-09-02T23:54:12.783 回答
0

原因可能Product p是 null,通过 output 进行检查<%= p %>

于 2013-09-02T12:36:59.603 回答