gpt4 book ai didi

javascript - 使用来自不同 HTML 属性的项目填充数组

转载 作者:太空狗 更新时间:2023-10-29 16:05:46 24 4
gpt4 key购买 nike

我有大约 1000 个具有相同类名和自定义属性的图像和文本区域。类名分别是 emoticon 和 emoticonlist。自定义属性分别是 emo-tag 和 emo-as​​cii。

每张图片都有其合作伙伴(文本区域),其自定义属性中的内容完全相同。

示例:

emo-tag   = "f-x" // for images
emo-ascii = "f-x" // for textareas

其中 x 代表 0 到 999 之间的数字。

我的脚本毫无问题地捕获了图像属性和我需要的东西。当我尝试获取具有与图像一样的确切属性内容的文本区域的值时,问题就开始了。

这是我的代码:

$(function(){
var json = [];

$('img').each(function(){
var emoimg = $(this).attr("src");
var emoalt = $(this).attr("alt");
var emotag = $(this).attr("emo-tag");

//Does not this supposed to capture the value of this specific textarea?
var emoascii= $('.emoticonlist').attr("emo-ascii",emotag).val();

json.push({
id : emotag,
name : emoalt,
img : emoimg,
content: emoascii
});

});
var s = JSON.stringify(json);
$("#content").after("<div>" + s + "</div>");
});

正如我所说,代码有效,但捕获并插入数组的文本区域只是数组的第一个和所有项目。我怎样才能完成我想要的?

当前输出:

[
{"id":"emo-0","name":"Smiley Face","img":"images/smiley-face.png","content":":)"},
{"id":"emo-1","name":"Big smile","img":"images/big-smile.png","content":":)"},
{"id":"emo-2","name":"Sad face","img":"images/sad-face.png","content":":)"},
...
...
...
]

期望的输出:

[
{"id":"emo-0","name":"Smiley Face","img":"images/smiley-face.png","content":":)"},
{"id":"emo-1","name":"Big smile","img":"images/big-smile.png","content":":D"},
{"id":"emo-2","name":"Sad face","img":"images/sad-face.png","content":":("},
...
...
...
]

最佳答案

使用 $('.emoticonlist').attr("emo-as​​cii",emotag),您设置属性而不是获取属性等于 的元素表情符号.( http://api.jquery.com/attr/ )

也许尝试更换线路

var emoascii= $('.emoticonlist').attr("emo-ascii",emotag).val();

var emoascii= $('.emoticonlist[emo-ascii=' + emotag +']').val();

( https://api.jquery.com/attribute-equals-selector/ )

关于javascript - 使用来自不同 HTML 属性的项目填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34324517/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com