У меня есть около 1000 изображений и текстовых полей с тем же именем класса и настраиваемым атрибутом. Названия классов - это смайлик и смайлик, соответственно. Пользовательскими атрибутами являются emo-tag и emo-ascii соответственно.Заполнение массива элементами из разных атрибутов HTML
Каждое изображение имеет своего партнера (текстовое поле) с тем же содержимым в его пользовательском атрибуте.
Пример:
emo-tag = "f-x" // for images
emo-ascii = "f-x" // for textareas
где х представляет собой число от 0 до 999.
Мой сценарий захватывает атрибуты изображений и то, что мне нужно без проблем. Проблема начинается, когда я пытаюсь получить значение textarea, у которого есть точный контент атрибута, такой как изображение.
Вот мой код:
$(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":":("},
...
...
...
]
Не могли бы вы использовать 'код блока' инструмент при редактировании, чтобы дать рабочий скрипку пример? Если вы не можете заставить его работать, тогда, пожалуйста, укажите достаточно html и, чтобы мы могли сделать легкую скрипку. Спасибо –
'$ ('. Emoticonlist'). Attr (" emo-ascii ", emotag)' устанавливает атрибут. Он не получает его, как вы хотите (http://api.jquery.com/attr/). – Lucas