如何在jQuery中获取输入类型复选框和无线电的类型

时间:2014-01-11 11:20:29

标签: javascript jquery select input radio

jQuery('.pricefield select','.pricefield input').each
    (jQuery(this).change (function (){
        alert(jQuery(this).attr("type")); //it give undefined
        alert(jQuery(this).is(':input')); //it gives false
        var allInputs = jQuery(":input"); 
        alert(allInputs.attr('type'));  //it gives hidden
        get_sum();
    }
));

如何将字段类型标识为selectradiocheckbox

2 个答案:

答案 0 :(得分:3)

jQuery('select, input', '.pricefield').on('change', function () {
     var tag  = $(this).prop('tagName'); // return "select", "input" etc
     var type = $(this).prop('type'); // return "radio", "checkbox" etc
});

FIDDLE

答案 1 :(得分:0)

你有一些错误的语法,在each()内缺少一个函数声明,但实际上你可以写得更简单,如:

jQuery('.pricefield select, .pricefield input').change(function () {
    alert(jQuery(this).attr("type"));
    alert(jQuery(this).is(':input')); 
    var allInputs = jQuery(":input");
    alert(allInputs.attr('type'));
    get_sum();
});

Demo