使用jquery/Javascript拆分单选按钮值
我想从我的表单中分割单选按钮的值,以便知道选择的选项以及价格。|分隔符前的值为价格,|分隔符后的值为所选选项使用jquery/Javascript拆分单选按钮值,javascript,jquery,Javascript,Jquery,我想从我的表单中分割单选按钮的值,以便知道选择的选项以及价格。|分隔符前的值为价格,|分隔符后的值为所选选项 <input type="radio" name="arm" value="50|1" id="split" required> Option: 1<br> <input type="radio" name="arm" value="100|2" id="split" required> Option: 2<br> <input ty
<input type="radio" name="arm" value="50|1" id="split" required> Option: 1<br>
<input type="radio" name="arm" value="100|2" id="split" required> Option: 2<br>
<input type="radio" name="arm" value="150|3" id="split" required> Option: 3<br>
<input type="radio" name="mechanism" value="50|1"> Option: 1<br>
<input type="radio" name="mechanism" value="100|2"> Option: 2<br>
<input type="radio" name="mechanism" value="150|3"> Option: 3<br>
<input type="radio" name="base" value="50|1"> Option: 1<br>
<input type="radio" name="base" value="100|2"> Option: 2<br>
<input type="radio" name="fabric" value="50|1"> Option: 1<br>
<input type="radio" name="fabric" value="50|2"> Option: 2<br>
<input type="radio" name="fabric" value="50|3"> Option: 3<br>
<script>
jQuery(":text[name='quantity'], :radio[name='arm'], :radio[name='mechanism'], :radio[name='base'], :radio[name='fabric']").change(function(){
var arm = jQuery(":radio[name='arm']:checked");
var arr = arm.split('|');
var $mechanism = jQuery(":radio[name='mechanism']:checked");
var $base = jQuery(":radio[name='base']:checked");
var $fabric = jQuery(":radio[name='fabric']:checked");
var $quantity = jQuery(":text[name='quantity']");
if($arm.length ==1){
var a = parseInt($arm.val(arr[0]), 10);
var m = parseInt($mechanism.val(), 10);
var b = parseInt($base.val(), 10);
var f = parseInt($fabric.val(), 10);
var q = parseInt($quantity.val(), 10);
jQuery("#result").val((a + m + b + f) * q);
}
});
</script>
并按如下方式传递该值:
var a = parseInt($arm.val(arr[0]), 10);
这是行不通的。我不是Jquery或Javascript大师,我应该怎么做才能让它工作?这一行:
var arr=arm.split(“|”)代码>
您需要获取arm
的值,并将其拆分
var arr=arm.val().split(“|”)代码>试试看
var arm=jQuery(“:radio[name='arm']:checked”).val()代码>
var arr=arm.split(“|”)代码>您应该使用var arr=arm.val().split(“|”)
orvar arm=jQuery(“:radio[name='arm']:checked”).val()代码>是,那我该怎么做呢?这给了我一个错误:$arm没有定义。我猜这个错误与这行代码有关:var a=parseInt($arm.val(arr[0]),10);尝试parseInt(arr[0],10)代码>。谢谢,是的,我算出来了。它现在似乎正在工作,但给我的总值不正确。我如何“打印”出每个数组的值?这给了我错误:$arm未定义我猜错误与此行有关:var a=parseInt($arm.val(arr[0]),10);
var a = parseInt($arm.val(arr[0]), 10);