如何通过jquery获取js动态append到html页面的dom属性

如何通过jquery获取js动态append到html页面的dom属性,第1张

$("#content1")

append(

'<table id="1_'//id=1_type

+ type

+ '"><tr><td>分享语句'

+ type

+ '</td></tr><tr>'

+ '<td><div id="wshopshare"></div></td>'

+ '<td><input name="wshopshare" id="wshopshare" type="text" style="width: 440px; "></td>'

+ '<td></td>'

+ '<td><button type="button" id="del1" onclick="componentdeleteAll(\'1\');">删除</button></td>'

+ '</tr></table>');

一般而言,JQuery可以利用attr来获取元素属性值,

1、$("元素")attr("属性");                //获取指定属性的值

2、$("元素")attr("属性","属性值");//设置属性值

3、$("元素")removeAttr("属性");  //移除指定属性

不过在16中加入了prop,用法同attr相同。只是将上面中attr替换成prop即可,不过在获取checked等属性时,将会返回标准属性true/false,不会和之前的attr一样,返回checked或者“”。

而JQuery中获取类名的属性为class亦可以为className,因为在HTML DOM中没有class属性,而是className属性。在JQuery中,有对className作出关键字的转换。

扩展资料:

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档 *** 作、事件处理、动画设计和Ajax交互。

参考资料:

jquery百度百科

在180版本之前,我们要想获取某个DOM绑定的事件处理程序可以这样:

$data(domObj,'events');//或者$('selector')data('events')

而从180版本开始,jQuery突然不支持这样使用了,而是改到了一个叫'_data'的函数功能上了,即,180及以后的版本你可以这么用:

$_data(domObj,'events');//注意,这里不能像$('selector')_data('events')这样用了。

要想写出兼容兼容各个jQuery版本的方式,这样获取即可:

var eventsData = $data(domObj,'events') || $_data(domObj,'events');//这个改变在easyui 131的源码中也有体 

ps:

1接受的domObj节点必须为dom节点对象,不能为jquery对象,如果是获取的jquery对象,要用get(0)或者[0]转为dom对象

2只能获取到使用jquery方法绑定的参数 on ,live 等。如果是直接写到元素上的事件是不能获取的,使用其他非jquery设置的事件也是无法获取的

你这个a不是在span里面吗,在绑定的事件里直接使用 $(this)parent()就可以获取到包裹它的span了。append之后,就会生成以下dom结构,然后在事件绑定取父元素就好了。

片段1

<span data-musicicon="name1" class="music-icon-hook"><a href="#" title="播放" data-action="play" class="list-micon icon-play"></a></span>

<!-- more -->

<span data-musicicon="name10" class="music-icon-hook"><a href="#" title="播放" data-action="play" class="list-micon icon-play"></a></span>

<script>

代码

<div id="div1"></div>

<script>

$(function(){

// 模拟的数据。

var musicList=[{MusicName:'name1'},{MusicName:'name2'},{MusicName:'name3'},{MusicName:'name4'},{MusicName:'name5'},{MusicName:'name6'},{MusicName:'name7'},{MusicName:'name8'},{MusicName:'name9'},{MusicName:'name10'}];

// 以下代码会生成 片段1 的dom

for (i = 0; i < musicListlength; i++) {

$("#div1")append('<span data-musicicon="'+musicList[i]MusicName +'" class="music-icon-hook"> <a href="#" title="播放" data-action="play" class="list-micon icon-play"> play </a></span>');

}

$('list-micon')each(function(index){

$(this)click(function(){

var span=$(this)parent(); // 获取到a的父元素,即包含它的那个span

alert(spanattr('data-musicicon'));

// 可以对span进行 *** 作了

});

});

});

</script>

var rowId = 'INDEX: 20160911',

view = documentgetElementById(rowId),

// 将Element对象转换为JQuery对象

$view = $(view);

// 毫无疑问,结果返回1alert($viewlength)

此方法强大,几乎就是大杀器,没有查询不了的元素,无论你的元素ID命名多么刁钻。

$('element')on('click',function(){

/获取该元素/

consolelog($(this));

alert('click');

});

on() 方法在被选元素及子元素上添加一个或多个事件处理程序。

自 jQuery 版本 17 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。

基本语法:

$(selector)on(event,childSelector,data,function,map)

实例:

$("p")on("click",function(){

alert("The paragraph was clicked");

});

以上就是关于如何通过jquery获取js动态append到html页面的dom属性全部的内容,包括:如何通过jquery获取js动态append到html页面的dom属性、jquery获取当前元素的classname、jquery 获取元素绑定了哪些事件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9631831.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存