在 JQuery 中引用类的当前对象

Posted

技术标签:

【中文标题】在 JQuery 中引用类的当前对象【英文标题】:Referencing current object of a class in JQuery 【发布时间】:2012-11-07 20:28:59 【问题描述】:

对于任何类型的 Web 开发,我都不是很有经验,更不用说我需要使用的 jquery 和 ajax,所以我很难过。

我正在做一个项目,当单击一个名为“重新打开”的单独按钮时,我需要将两个复选框重新绘制为“未选中”。现在我正在使用的代码是:

$('.reopenBtn').click(function() 
    var confirm_reopen = confirm("Are you sure you want to open this opportunity back up?");
    if (confirm_reopen) 
        var href = 'cfcs/opportunity.cfc';
        var method = 'ReopenOp';
        var opsid = $(this).parent().parent().attr('id');
        $('#' + opsid).ajaxSuccess(function() );
        $.post(href, 
            method: method,
            opsid: opsid
        );
        $('.lost').removeAttr('checked');
        $('.won').removeAttr('checked');
    
);

此代码的问题在于它会重新绘制页面上复选框的所有实例,而不仅仅是获胜和丢失复选框的特定实例。我正在寻找的是这样的:

$(this).('.lost').removeAttr('checked');
$(this).('.won').removeAttr('checcked');

就像我说的,我对大多数 Web 开发语言都不是很有经验,所以我真的不知道能够做到这一点的语法。我的极限是能够阅读和理解足以调整和更改它的代码,而不是从头开始做任何新的事情。

任何帮助将不胜感激!

【问题讨论】:

恐怕得看一些标记了.... 【参考方案1】:

您可以将其作为上下文传递给您的选择器http://api.jquery.com/jQuery/#selector-context

$('.lost,.won',this).removeAttr('checked');

仅供参考,.prop() 是从 jQuery 1.6+ 开始在属性中设置 disabled 的正确方法

【讨论】:

以上是关于在 JQuery 中引用类的当前对象的主要内容,如果未能解决你的问题,请参考以下文章

Java中this和super的用法总结

jquery and js

java中的this和super

java中为对象返回一个引用

面向对象进阶--拷贝构造函数

jquery怎么获取当前节点的前一个节点