jquery清除除一个以外的所有输入字段的值

时间:2012-09-07 16:37:15

标签: jquery loops

我正在尝试编写一个脚本来清除除一个输入字段之外的所有输入字段的值。此脚本仍在清除DESCRIPTION输入字段。

jQuery('.campaign-column').not('active').each(function(index){
    if(jQuery('.campaign-column input[name!="DESCRIPTION"]')){
        jQuery(this+':input').val('');
        }
    });

3 个答案:

答案 0 :(得分:9)

简化:

$('.campaign-column:not(.active) input:not([name="DESCRIPTION"])').val('')

我认为您的意思是.not('.active')而不是.not('active'),因为HTML中没有<active>元素。请注意,原始代码中的循环(.each())是没有意义的,因为每次迭代都会反复选择相同的元素。

答案 1 :(得分:1)

在这种情况下,您不需要编写每个循环。试试这个

$(function(){
    // Select all text fields but not Description field..   

    var $txtfields = $('.campaign-column:not(.active)').find('input[type=text][name!=DESCRIPTION]')

    $('#btn1').on('click', function() {
       $txtfields.val('')  ;
    });
});​

选中FIDDLE作为工作示例

答案 2 :(得分:0)

$("input").each(function() {
    if($(this).attr('id') != 'source_url'){
        $(this).val('');
    }
});