2017-04-26 29 views
0

我有一个<input readonly>字段,其​​中包含一个<?php echo $row['val'];?>值,它是购物车的total_price。另外我有一个<select>与传输类型的选择和它的值可以增加或减少更多的钱到TOTAL_PRICE动态地将SELECT OPTION中的值加到和/或减去现有的INPUT值

Choose transport type: 

<select id="transport"> 
    <option value="0">Pick Up (costs 0$)</option> 
    <option value="5">UPS (costs 5$)</option> 
</select> 

<h3> Total: </h3> 
<input id="totalprice" type="text" value="<?php echo $row['total_sum'];?>" readonly> $ 

我想这样做的是,当我选择“UPS(费用$ 5)”和总价格输入值为50,它显示55 $,然后如果我选择“拾取(成本0 $)”,它再次显示50。

有没有一些方法来实现这与JavaScript?我在StackOverflow中搜索了一个答案,但是类似的问题并不是我所需要的,我想与输入值交互,而不仅仅是在<input>中显示option.value。谢谢!

回答

1

未测试,但应该工作。试试这个:

var totalPrice = parseInt($('#totalprice').val()); 
$('#transport').change(function(){ 
    var dynamicPrice = totalPrice; 
    if(parseInt($(this).val()) != 0){ 
     var newValue = dynamicPrice + parseInt($(this).val()); 
     $('#totalprice').val(newValue); 
    }else{ 
     $('#totalprice').val(totalPrice); 
    } 
}); 
+0

没错,这就是我想要的东西,它的工作完美,当我改变了第一线,VAR totalPrice = parseInt函数($( '#totalprice')VAL())。我试图编辑你的答案,但我不能。谢谢 – josephbc