Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用getAttribute或SetAttribute抓取_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用getAttribute或SetAttribute抓取

Javascript 如何使用getAttribute或SetAttribute抓取,javascript,jquery,Javascript,Jquery,console.log不断给出错误;未捕获类型错误:未定义不是函数。我不知道为什么。我试图使用getAttribute或setAttribute,但我得到了相同的错误 我也不知道如何添加评论行中的爱。每次用户点击,爱就会增加 <a data-love-count="${loveCount}" href="/love/${session.userId}"> <i class="icn-heart"></i> ${loved} </a>

console.log不断给出错误;未捕获类型错误:未定义不是函数。我不知道为什么。我试图使用getAttribute或setAttribute,但我得到了相同的错误

我也不知道如何添加评论行中的爱。每次用户点击,爱就会增加

<a data-love-count="${loveCount}" href="/love/${session.userId}">
    <i class="icn-heart"></i>
    ${loved}
</a>
您正在使用html属性设置器来获取数据。将该行替换为:

this.$count = this.$generic.setAttribute('data-love-count');
您应该很好。

setAttribute和getAttribute是本机函数,但$generic变量是jQuery对象

jQuery改用.attr:

如果希望代码正常工作,可以执行以下操作:

this.$count=+this.$generic[0].getAttribute'data-love-count'

请注意,它是get not set,并且+将其转换为数字类型

0将访问jQuery选择器找到的第一个本机元素,然后可以对其调用本机方法

增加:


这.$count+=6

setAttribute需要两个参数。还有,为什么不使用jQuery的attr呢?请发布您的完整代码,以便我们可以帮助您…@enyce12-我只是查了一下,发现它只接受两个参数。谢谢谢谢-但是如果爱增加了,我怎么加$count呢?你是什么意思?这将“data love count”属性中的值保存为$count。每次不同的用户单击love时,需要显示不同的数字。Int将只有我们看到的初始数字$generic.get0与$generic[0]有何不同?@DominicTobias-谢谢,它对setAttribute也有效吗?只是更新:我尝试了您的示例,但它返回了错误:无法读取未定义的属性“get”。它们是相同的,只是它检查数字是否存在,而且我认为[0]在ECMAScript 4中工作,但谁在乎呢?两者都是fine@kittymeows查看您的代码,loveCount会发生更改,并且可能会在更改时重新呈现模板。但无论如何,如果要手动增加属性,可以执行此操作。$generic[0]。setAttribute'data-love-count',7586或此。$generic.attr'data-love-count',7586@DominicTobias谢谢你的解释,但是增加爱的数量将是动态的。隐马尔可夫模型。
this.$count = this.$generic.setAttribute('data-love-count');
this.$count = this.$generic.attr('data-love-count');