在JSP页面中,我使用struts iterator
<s:iterator value="categoryList" status="category">
//other code..
<a href="#" onclick="a_onClick('<s:property value="productsByOid"/>')"><s:property value="name"/></a>
</s:iterator>
我想用对象列表作为参数调用js函数。在那里,我想迭代这个列表并获得产品属性(名称,价格)。我该怎么做 ?
function a_onClick(p) {
alert('a_onClick');
console.log(p);
}
在控制台上收到:[pl.model.Product@3270eb8a]
碎片模型类:
public class Category {
private Integer oid;
private String name;
private Collection<Product> productsByOid;
... }
public class Product {
private Integer oid;
private Integer dostPno;
private String opis;
private String name;
private String producent;
private String price;
private Category categoryByCategoryOid;
答案 0 :(得分:0)
如果您的列表在jsp页面中打印出来,那么您可以使用jquery选择器并通过迭代执行您希望的任何操作。
如果要加载堆栈中存在的对象(比如在jsp中迭代的列表),则必须使用struts2属性标记从堆栈中获取该对象。即,
<a onclick='functionsName(<s:propery value="nameOnStack")'
也许您需要在传递其值时向上面的参数添加引号。