如题
我在jsp页面用<s:iterator>标签遍历了购物车里的商品,并且在总价和数量各定义一个ID,在数量属性里定义一个onchang()并写了相应的JS,但是只有列表第一种商品能总价随数量变化而变化。我想可能是每种商品ID都相同的原因,请问应该怎么做能解决这个问题。
JSP页面相关代码:<s:iterator value="#session.proInvoiceList" var="proInvoice" status="status">
<form action="invoiceedit.action" method="post">
<input type="hidden" name="proInvoice.id"
value="<s:property value='#proInvoice.id'/>">
<tr><td><div class="STYLE1" align="center">
<s:property value="#proInvoice.product.id" /></div>
</td><td><div class="STYLE1" align="center">
<s:property value="#proInvoice.price" /></div></td>
<td><div class="STYLE1" align="center">
<input type="text" name="proInvoice.total" id="total" value="<s:property value="#proInvoice.total" />">
<input type="hidden" name="proInvoice.price" id="price" value="<s:property value="#proInvoice.price" />"></div></td>
<td><div class="STYLE1" align="center"><input type="text" name="proInvoice.count" id="count" onchange="changesum();"
value="<s:property value="#proInvoice.count" />"></div></td>
js代码:function changesum() {
var count = document.getElementById("count").value;
var price= document.getElementById("price").value;
document.getElementById("total").value = price*count;
}
------解决思路----------------------
每种商品 ID 都相同?
------解决思路----------------------
每种商品的 id 总不能一样吧?
找个唯一属性的
------解决思路----------------------
用$(this)
------解决思路----------------------
或者 onchange="changesum(this);" 把this传过去,获取当前的对象