jQuery更改ID!

我是一个jQuery noobie,并一直在尝试添加一个脚本来更改div上的id的id。

这是一个jsfiddle的例子 。

$(function accept() { $("div:scrollwrap").attr('scrollwrap','highlight'); });​ 

谢谢 :)

attr的第一个参数应该是属性名称,而不是当前值:

 $(function accept() { $("div#scrollwrap").attr('id','highlight'); });​ 

但是,阅读您的jsFiddle代码,您似乎有一类突出显示而不是ID。 这是我编辑的版本 ,我认为你想要实现的目标。

请注意,我更改了以下内容:

  • 通过添加ID使.hightlight类更具体,否则高亮样式不会覆盖原始类。
  • 删除内联onClick,因为您可以在脚本中执行此操作,这被认为是最佳实践(请参阅JS添加.click()
  • 更改了JS函数以切换类,因为我认为如果用户取消选中该复选框,它应该无效。

更多资源(jQuery文档):

  • .toggleClass()
  • 。点击()
  • .attr()

如果你想用id scrollwrap更改div以使id突出显示:

  $(document).ready(function() { $("#checkbox2").click(function() { $("#scrollwrap").attr('id','highlight'); }); }); 

记住ID是唯一的,所以这应该只影响一个元素。 如果你想影响多个使用类和函数.addClass()/。removeClass()

这是你改变ID的方式:

 $(function accept(){ //makes sure your document is ready $('div#scrollwrap').attr('id', 'highlight') }) 

(我假设scrollwram是你的ID)