首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用‘jQuery’关键字传递此html对象的属性

如何使用‘jQuery’关键字传递此html对象的属性
EN

Stack Overflow用户
提问于 2012-12-05 18:32:52
回答 3查看 2.9K关注 0票数 0

JQuery/JS菜鸟在这里-但到目前为止,正在享受学习经验。

我的场景是:

我有多个这样的按钮:

代码语言:javascript
复制
<button id="thumb-1" class="thumbs">click 1</button>
<button id="thumb-2" class="thumbs">click 2</button>
<button id="thumb-3" class="thumbs">click 3</button>

当用户单击一个时,我通过this关键字将其传递给一个自定义函数,如下所示:

代码语言:javascript
复制
$('.thumbs').click(function(){
    $.fn.myFunc(this);
}

它将把jQuery对象发送给函数,即整个按钮html。

代码语言:javascript
复制
<button id="thumb-x" class="thumbs">click x</button>

现在我想要做的是获取该按钮的id并将其存储在一个字符串变量中。当然,使用下面的代码是行不通的,一个html按钮元素没有attr方法。

代码语言:javascript
复制
$.fn.myFunc = function(button) { 
    var id = button.attr('id');
}

有人有什么简单的想法吗?

谢谢!-詹姆斯

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-05 18:34:07

如果您想使用jquery,然后将按钮转换为对象,或者如果您想从javascript对象中获取id,那么就使用button.id

代码语言:javascript
复制
$.fn.myFunc = function(button) { 

    var id = $(button).attr('id'); // with jquery object
    id = button.id; //with javascript object 
}
票数 4
EN

Stack Overflow用户

发布于 2012-12-05 18:34:08

在使用jQuery函数之前,需要将其设置为jQuery对象

代码语言:javascript
复制
$.fn.myFunc = function(button) { 
    var id = $(button).attr('id');
}
票数 2
EN

Stack Overflow用户

发布于 2012-12-05 18:47:25

如果您从myFunc发送"this“,则不需要使用jquery attr,我们可以直接访问,这样会更快、更容易

代码语言:javascript
复制
$(".thumbs").click(function(){
$.fn.myFunc(this);
});
$.fn.myFunc = function(button) {
alert(button.id);
}

请参考下面的小提琴

http://jsfiddle.net/m2Ts5/18/

谢谢

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13721179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档