使用加载和单击事件使用jQuery更改锚的类

时间:2012-10-14 08:50:25

标签: jquery onclick onload addclass removeclass

我有一个锚元素。 'page-2'类调用该页面并使用JavaScript显示它:

<a id="btn2" class="page-2">Go to page 2</a>

我还有一个函数可以使用显示消息的类'disabledPage2'来禁用链接。当加载锚元素时,我需要自动添加disabledPage2类:

var anchorElement = $(this);
if ($(this).hasClass('disabledPage2')) { message.
    new Messi('We need your X info before we can continue.', {title:'Notice'});
    return false;
}

当我手动添加'disabledPage2'类时,它正常运行,我无法自动添加类。

然后我有一组单选按钮:

<?php
   $widthArray = array(380,410,435,460,490,515);
   $x = 0;
   while($result = mysql_fetch_assoc($results)){
   echo '<li>
           <label class="label_radio">' . $result['option_label'] . '
             <input type="radio" name="optionName" class="radioOff" validate="required:true" value="' . $result['ID'] . '" onclick="$(\'#swoosher\').effect(\'size\', {to: {width: '.$widthArray[$x].'} }, 500);"/>
           </label>
         </li>';$x++;}
 ?>

单击单选按钮时,我需要删除'disabledPage2'类。

我尝试创建这样的函数来处理当锚元素加载时加载禁用类:

$('#btn2').load(function(){
  $('#btn2').addClass('disabledPage2');
}); 

这个用于处理单选按钮的onclick事件:

$(document).ready(function(){
  $(":input").click(function(){
    $('#btn2').removeClass('disabledPage2');
  });
});

我试图以各种方式使用它,而且我发现没有“解决方案”。我对JavaScript和jQuery有点新鲜,我显然没有做对。

有没有人知道如何完成我想要做的事情,或者你能指出我能找到答案的地方。

谢谢!

1 个答案:

答案 0 :(得分:3)

从btn2:

中删除加载函数
$(document).ready(function(){

   $('#btn2').addClass('disabledPage2');

  //This will work when you click all input elements on your page. why not use the class (redioOdd) like this $(".radioOff").click
  $(":input").click(function(){

       $('#btn2').removeClass('disabledPage2');

  });

});