已经给jsp页面带去对象 product(包含商品的pid,pname,price),
在<select>中列出所有商品名字,
当在<select>选中这个商品的名字${product.pname},则通过属性${product.pid},
判断出来pid,并显示它的价格${product.price},
怎么做呢,js 或者JSTL中<c:if>等标签吗,
我不会做,大家能帮我实现吗

解决方案 »

  1.   

    给你写个思路, code 细节可能不对, 但稍微改改肯定行:
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
    <script>
    var products = new Array();
    <c:forEach var="product" items="${products}">
    products['<c:out value="${product.id}"/>'] = '<c:out value="${product.price}"/>';
    </c:forEach>
    function changePro(){
    var pId = document.getElementById("product").value;
    document.getElementById("price").value = products[pId];
    }
    </script>
    <html>
    <select id="product" name="product" onchange="changePro();">
    <c:forEach var="product" items="${products}">
    <option value='<c:out value="${product.id}"/>'><c:out value="${product.name}"/></option>
    </c:forEach>
    </select>
    <input id="price" type="text" value=""/>
    </html>