jQuery$(此)引用HTML文档而不是元素

jQuery$(此)引用HTML文档而不是元素,jquery,this,Jquery,This,我试图读取一个元素的rel值 $('.input-default').ready(function() { $('.input-default').inputDefault($(this).attr('rel')); }); 但问题是$(this)以某种方式引用了整个HTML文档。为什么?如何修复呢?您不会在特定元素的.ready()事件中触发它。我认为当时的背景可能是窗户。直接参考输入即可 编辑 在阅读了你的评论并进行了一些搜索之后,我意识到你正在使用这个插件 查看其文档,您可

我试图读取一个元素的rel值

$('.input-default').ready(function()
{
    $('.input-default').inputDefault($(this).attr('rel'));
});

但问题是$(this)以某种方式引用了整个HTML文档。为什么?如何修复呢?

您不会在特定元素的
.ready()
事件中触发它。我认为当时的背景可能是窗户。直接参考输入即可

编辑

在阅读了你的评论并进行了一些搜索之后,我意识到你正在使用这个插件

查看其文档,您可以执行以下操作以获得所需内容

$(document).ready(function(){
   $('.input.input-default').inputDefault({defaultAttr: 'rel'});
});
我不确定这个插件是否可以像你在代码中那样被调用,但是如果你确定这个方法可以工作,并且你想手动设置这个值,你可以做下面的事情。

要遍历DOM元素集合,可以使用
.each()
函数

$(document).ready(function(){
   $('.input-default').each(function(){
        $(this).inputDefault($(this).attr('rel'));
   });
});

您不会在特定元素的
.ready()
事件中触发它。我认为当时的背景可能是窗户。直接参考输入即可

编辑

在阅读了你的评论并进行了一些搜索之后,我意识到你正在使用这个插件

查看其文档,您可以执行以下操作以获得所需内容

$(document).ready(function(){
   $('.input.input-default').inputDefault({defaultAttr: 'rel'});
});
我不确定这个插件是否可以像你在代码中那样被调用,但是如果你确定这个方法可以工作,并且你想手动设置这个值,你可以做下面的事情。

要遍历DOM元素集合,可以使用
.each()
函数

$(document).ready(function(){
   $('.input-default').each(function(){
        $(this).inputDefault($(this).attr('rel'));
   });
});

它需要普遍适用,这样我就可以给表单元素一个类输入默认值和rel what作为输入字段的默认值。好吧,一个类可以应用于多个元素,所以调用
.val()
,或者获取一个值是没有意义的,因为您有很多实例。如果你先去掉
:过滤器,你会得到一个集合=1,你的答案比我的好得多,也更简洁:)约翰,我真的不明白你在说什么。为什么我要调用val()?我为什么要收藏?如果输入字段为空,则它们需要类似于“在此处输入用户名”的内容,这就是函数的用途。@Thomas您正在处理一个类,因此将获得一个集合。无论如何,您可能想在问题中提到您正在使用
inputdefault
插件。我已经更新了我的答案并列出了您的选择它需要普遍适用,这样我就可以给表单元素一个类输入默认值和rel what作为输入字段的默认值。好吧,一个类可以应用于多个元素,所以调用
.val()
或获取值没有意义,因为您有许多实例。如果你先去掉
:过滤器,你会得到一个集合=1,你的答案比我的好得多,也更简洁:)约翰,我真的不明白你在说什么。为什么我要调用val()?我为什么要收藏?如果输入字段为空,则它们需要类似于“在此处输入用户名”的内容,这就是函数的用途。@Thomas您正在处理一个类,因此将获得一个集合。无论如何,您可能想在问题中提到您正在使用
inputdefault
插件。我已经更新了我的答案并列出了你的选择