2016-08-05 12 views
0

私は電子商取引システムを開発しています。 ユーザーの合計が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 }); 
} 
}); 
+0

を継続する方法についていくつかの洞察を与えるだろう、私はあなたが1行目にエラーが発生しているかもしれないと思う '[マイJS FIDDLE CODE] [1] ' –

+0

私はコードを逃しました:P in急いで –

答えて

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); 
    }); 
}); 
+0

いいえ動作していません! –

+0

これは 'target'要素をクリックしたときだけ発火するので、常にチェックされるので、' else'を打つことはありません。 –

+0

'変更'イベントへの 'クリック'イベントの変更 – Rijin

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> 

$( '#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')); 
    } 
}) 

コードがリファインではありませんが、それはあなたの

関連する問題