我想要一个jquery源来计算我的表单
<form>
<input type="radio" name="type" value="1000"> $1000
<input type="radio" name="type" value="2000"> $2000
<input type="radio" name="type" value="3000"> $3000
<input type="radio" name="type" value="4000"> $4000
<input type="radio" name="type" value="5000"> $5000
<select name="number">
<option name="number" value="1">1</option>
<option name="number" value="1">2</option>
<option name="number" value="1">3</option>
<option name="number" value="1">4</option>
<option name="number" value="1">5</option>
</select>
</form>
必须输入*数字并在文字输入中显示总数
答案 0 :(得分:3)
您可以将change()
绑定到:radio
和<select/>
元素,以计算总数。
$("select[name='number'], :radio[name='type']").change(function(){
var $r = $(":radio[name='type']:checked");
var $d = $("select[name='number']");
if($r.length ==1){
var t = parseInt($r.val(), 10);
var n = parseInt($d.val(), 10);
$("#result").val(t*n);
}
});
<强> Example on jsfiddle 强>
答案 1 :(得分:2)
这是我得到的
http://jsfiddle.net/04gqaLog/2/
$(document).ready(function() {
$("input[type='radio']").on("click", function() {
var price = +$(this).attr("value");
var quantity = +$("option:selected").text();
$("#total").text(price * quantity);
});
});
有趣提示:您可以使用+
自动将字符串转换为数字。它比parseInt
或Number
短得多。
答案 2 :(得分:1)
演示:http://jsfiddle.net/wdm954/enKV6/
$('select[name=number]').change(compute);
$('input[name=type]').change(compute);
function compute() {
if ( $('input[name=type]:checked').val() != undefined ) {
var a = $('input[name=type]:checked').val();
var b = $('select[name=number]').val();
var total = a * b;
$('#total').val(total);
}
}