我想通过“option rel =”更改一个说明产品价格的文本字段
我把html代码放在这里:http://jsfiddle.net/YjLM7/
因此,如果选择列表说明:
<option selected="selected" rel="price-" value="0">50 x 50 cm</option>
显示标准价格。
如果我将选择列表更改为:
<option rel="price-100" value="1">100 x 100 cm</option>
价格应该增加100(如果选择第一个选项,则返回-100)。
会帮助你!
这里是完整的代码:
<select>
<option selected="selected" rel="price-" value="0">50 x 50 cm</option>
<option rel="price-100" value="1">100 x 100 cm, Price add: € 100,00</option>
</select>
<p>Price</p>
<p><strong>200 €</strong></p>
<form method="post" action="catalog/category-1/product-1.html">
<input type="hidden" value="" name="productid">
<input type="submit" class="button" value="Add to cart" name="addcart">
</form>
答案 0 :(得分:1)
我建议采用不同的方法:将项目的实际价格放在data-
的{{1}}属性中,并根据所选内容更改option
显示的文字。如果您的下拉列表有多个选项,这将使自己更具灵活性。
HTML:
option
JS:
<select class="item">
<option selected="selected" data-price="200">50 x 50 cm</option>
<option data-price="300">100 x 100 cm</option>
<option data-price="400">150 x 150 cm</option>
</select>
答案 1 :(得分:0)
See这个jsfiddle。
<select>
<option data-price="" selected="selected" value="0">50 x 50 cm</option>
<option data-price="100" value="1">100 x 100 cm, Price add: € 100,00</option>
</select>
<p>Price</p>
<p><strong data-price="200">200 €</strong></p>
<form method="post" action="catalog/category-1/product-1.html">
<input type="hidden" value="" name="productid">
<input type="submit" class="button" value="Add to cart" name="addcart">
</form>
和JS:
$("select").change(function(){
var price = parseFloat($(this).find("option:selected").data("price"));
if(isNaN(price))
price = 0;
var currPrice = parseFloat($("strong").data("price"));
$("strong").text(currPrice + price + ' €');
})