如果两个字段具有默认值

时间:2011-07-23 21:52:37

标签: jquery webforms

我正在尝试将其发送到用户单击按钮的位置,并且两个输入字段都具有默认值时,从这些输入字段中删除类。

目前我只能使用一个字段而不是多个字段。

有什么想法吗? http://jsfiddle.net/3xaBs

谢谢!

3 个答案:

答案 0 :(得分:2)

试试这个

$('#button').click(function() {
    if ($("#fone").val() == 'Hello World' && $("#ftwo").val() == 'Lorem Ipsum'){
        $('#fone').removeClass('myclass'); 
        $('#ftwo').removeClass('myclass'); 
    }
});

答案 1 :(得分:0)

这是一个可扩展的解决方案。您可以使用任意数量的字段,只有在组中的所有字段都具有提交时的默认值时,它才会清除类:

HTML - 利用自定义数据属性,这样您就可以对字段进行分组,而无需指定JQuery将删除的类:

<input type="text" id="fone" name="fone" class="myclass" data-group="my_fields" data-default="Hello World" value="Hello World" />
<input type="text" id="ftwo" name="ftwo" class="anotherclass" data-group="my_fields" data-default="Lorem Ipsum" value="Lorem Ipsum" />

<a href="#" id="button">Link</a>

JQuery - 抓取组中的字段,将其当前值与默认值进行比较,然后递增计数器,与总字段数进行比较:

$('#button').click(function(event) {
    event.preventDefault();
    var default_count = 0;
    $('input[data-group=my_fields]').each(function(){
       if($(this).val() == $(this).data('default'))
       {
           default_count++;
       } 
    });

    // If all fields have default value still...
    if(default_count == $('input[data-group=my_fields]').length)
    {
       $('input[data-group=my_fields]').removeClass(); // remove all classes
    }
});

工作演示:http://jsfiddle.net/AlienWebguy/3xaBs/5/

答案 2 :(得分:0)

看起来像it works for me

$('#button').click(function() {
   var one = $("#fone");
   var two = $("#ftwo");

   if (  one.val() == one[0].defaultValue
      && two.val() == two[0].defaultValue ){
       one.removeClass('myclass'); 
       two.removeClass('anotherclass'); 
   }
});