更改超级链接的onclick

时间:2015-10-26 06:58:50

标签: javascript jquery

我想更新onClick上超链接的click事件,并希望更新jquery中超链接内的html

HTML

<a class=" save" href="javascript:void(0);" onclick="save_unsave('unsave','UID','ID',this);">
    <div class="jopt_iconwrap" title="Unsave" alt="Unsave" >
        <span class="saved"></span>
    </div>
    Unsave
</a> 

现在点击save_unsave函数我想更新html设计,如下所示:

 <a class=" save" href="javascript:void(0);" onclick="save_unsave('save','UID','ID',this);">
        <div class="jopt_iconwrap" title="Save" alt="Save" >
            <span class=""></span>
        </div>
        Save
    </a> 

我试图在函数中执行此操作:

的jQuery

if(type == 'save')
    {
            var new_type = "'unsave'";
            jQuery(elem_obj).html("");
            jQuery(elem_obj).html('<a onclick="save_unsave('+new_type+','+uid+','+id+',this);" class="saved" href="javascript:void(0);"><div class="jopt_iconwrap" title="Unsave" alt="Unsave"><span class="saved"></span></div>Unsave</a>');
    }
    else if(type == 'unsave')
    {

        var new_type = "'save'";
        jQuery(elem_obj).html("");
        jQuery(elem_obj).html('<a onclick="save_unsave('+new_type+','+uid+','+id+',this);" class=" save" href="javascript:void(0);"><div class="jopt_iconwrap" title="Unsave" alt="Unsave"><span class="mico"></span></div>Save</a>');

    }

我们怎样才能在jquery中执行此操作。请帮助我,我在函数中有elmenet对象。

3 个答案:

答案 0 :(得分:2)

我建议您使用replaceWith()代替.html()它将适合您。

答案 1 :(得分:1)

$('a').click(function() {

  if ($(this).hasClass('save')) {
    $(this).removeClass('save').addClass('unsave');
    $(this).text('Unsave')
    $(this).attr('id','save')

  } else {
    $(this).removeClass('unsave').addClass('save');
    $(this).text('Save')
    $(this).attr('id','unsave')

  }



})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a class=" save">
  <div class="jopt_iconwrap" title="Save" alt="Save">
    <span class=""></span>
  </div>
  Save
</a>

试试这种方式

答案 2 :(得分:0)

您可以替换onclick事件,如下所示:

$('.save')[0].onclick = function() {
  save_unsave('save', 'UID', 'ID', this);
}