使用单选按钮

时间:2016-08-05 13:44:26

标签: javascript php jquery

我正在开发一个电子商务系统。 假设用户总共有1200个权利。 如果他选择快速交付选项 40应该添加到总数,这意味着最后数量应该从1200更改为1240。 我开发了一种应用程序。 我不知道什么,但价值不增加。不知道我需要什么解决方案, 这是我的代码:

<label><input type="radio" name="optradio" id="target">
<span class="label label-success">Fast Delivery</span></label>
<div id="output">10</div>
<div id="savevalue" style="visibility:hidden"></div>



<label><input type="radio" name="optradio" id="target2">
<span class="label label-success">Regular Delivery</span></label>

我的Javascript代码:

$('#target').click(function() {

var savevalue = $('#savevalue').text();
var output = $('#output').text();

if (savevalue==null || savevalue=="")
{
   output = output*1 + 40;
   savevalue = output;
   $('#output').html(function(i, val) { return output}); 
   $('#savevalue').html(function(i, val) { return savevalue}); 

}
});

$('#target2').click(function() {
var savevalue = $('#savevalue').text();
var output = $('#output').text();

if (output==savevalue)
{
   output = output*1 - 40;
   $('#output').html(function(i, val) { return output });
 }   
});

2 个答案:

答案 0 :(得分:0)

试试这个:

HTML:

<p id="price">100</p>
<input type="radio" name="delivery" id="delivery1" value="normal" checked> Normal <br>
<input type="radio" name="delivery" id="delivery2" value="fast"> Fast

JS:

$(document).ready(function(){
    $('#delivery1,#delivery2').change(function(){
    price = $('#price').text();
    if($('#delivery2').is(':checked')) {
        price = parseInt(price) + 40;

    } else {
        price = parseInt(price) - 40;
    }
    $('#price').text(price);
  });
});

答案 1 :(得分:0)

你可以查看我的小提琴https://jsfiddle.net/3422ntLh/

在我的解决方案中,查看html代码。

<label>
    <input type="radio" name="delivery" id="target" speed="fast">
    <span class="label label-success">Fast Delivery</span></label>
<div id="output">10</div>
<div id="original" value="10" style="visibility:hidden"></div>



<label>
    <input type="radio" name="delivery" id="target2" speed="normal">
    <span class="label label-success">Regular Delivery</span></label>

我在$(&#39; #original)中保存了商品的价值。

这是我的JS代码:

$('input:radio[name="delivery"]').change(function() {
    alert($('#original').attr('value'));
    $('#output').html($('#original_cost').attr('value'));
    if ($(this).attr('speed') == 'fast') {
        var extra_shipping_fee = 40;
        var current_price = parseInt($('#original').attr('value'));
        var new_price = current_price + extra_shipping_fee;
        $('#output').html(new_price);
    } else {
        $('#output').html($('#original').attr('value'));
    }
})

代码不是精炼,但它会为您提供有关如何继续

的一些见解