$(function(){ var obj = $("div[id^='channel_'][id$='_left']"); var val = obj.html(); var id = obj.attr("id"); //alert("value="+val+"id="+id); $("#"+id).html("<div id='channel_zcfg_left_content'>"+val+"</div>"); });
今天遇到一个不太棘手的问题,使用jquery的一些高级功能解决了,今天做些记录。上面就是全部代码,看起来有些让人迷惑,下面听我慢慢讲来!
需求和问题描述:
有十来个页面中有类似的div,它们的id略有不同,相同的是以“channel_”开头并且以“_left”结尾,每个页面仅有一个。我想把这个div中的数据上再加一个div用来控制排版和样式。一个个添加工作量也并不大,总共也就十来个页面。但技术含量很低,突发奇想要用jquery来解决它。
首先, $("div[id^='channel_'][id$='_left']");用来或许div对象,这样的方式可以获得所有div中id以channel_开头、以_left结尾的标签。
然后,获得其中内容和确定的id
最后将包装好的数据放回原div中。
这样我只需要使用css控制channel_zcfg_left_content这个id既可以实现样式和排版的需求。