Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.02.2011, 16:09
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

Не могу получить значение атрибута
Привет, всем!
Пытаюсь, получить значение атрибута дива, но не выходит. Создаю строку, в ней описание на jQuery добавления тега div с атрибутом a=1. Затем, даю на выполнение эту строку, функции setTimeout(). Результат: в DOM`е все создается, все нормально, теги присутствуют, а вот получить значение атрибута не получается.

var str = "$('body').append(\"<div id='1' a='1'></div>\")";
    setTimeout(str, 1);
    var title = $("div#1").attr("a");
    alert(title);

ЗЫ. Пробовал, просто от руки создать в body все это же, и получить значение атрибута средствами jquery, все получилось, а почему мой метод не работает не пойму. Объясните пожалуйста и подскажите решение если не затруднит
ЗЫЫ. Почему в виде строки? Да потому, что на самом деле она приходит в виде ответа сервера и ее нужно просто выполнить. Возможно я использую не ту функцию для выполнения. Не знаю. Надеюсь на Вашу помощь или подсказку.
Ответить с цитированием
  #2 (permalink)  
Старый 05.02.2011, 16:18
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

К моменту вызова строки
Сообщение от DenQ
$("div#1").attr("a");
этот див еще не существует в DOM. Легко проверить:
var str = "$('body').append(\"<div id='1' a='1'></div>\")";
setTimeout(str, 1);
alert($("div#1").length);

Установка таймера на 1 мс реально даст вам таймер на миллисекунд 10 или больше. Следующий за таймером код успеет уже выполниться.

И какой вообще смысл здесь в setTimeout?
Ответить с цитированием
  #3 (permalink)  
Старый 05.02.2011, 16:26
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

Сообщение от Amphiluke
И какой вообще смысл здесь в setTimeout?
Ну предложите тогда пожалуйста, другую функции выполнения строки... Я других не знаю, к сожалению.
Ответить с цитированием
  #4 (permalink)  
Старый 05.02.2011, 16:27
Аватар для Amphiluke
   ☽
Отправить личное сообщение для Amphiluke Посмотреть профиль Найти все сообщения от Amphiluke
 
Регистрация: 07.01.2011
Сообщений: 254

eval()
Ответить с цитированием
  #5 (permalink)  
Старый 05.02.2011, 16:33
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

Amphiluke, большое спасибо...
Ответить с цитированием
  #6 (permalink)  
Старый 06.02.2011, 08:10
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от Amphiluke
eval()
лечим симптомы, вместо причины, ну-ну...
p.s. не надо передавать javascript через ajax без причины
Ответить с цитированием
  #7 (permalink)  
Старый 06.02.2011, 11:27
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

x-yuri, я понимаю. Но попробуйте сказать это Дурову к примеру, у него js передается через ajax. И ничего, еще никто не умер.
Ответить с цитированием
  #8 (permalink)  
Старый 06.02.2011, 13:49
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

(прям дрожу перед авторитетом лучшего молодого предпринимателя 2007 года) и что? Highload - это по определению говнокод там приоритеты другие, качество кода далеко не на первом месте
Ответить с цитированием
  #9 (permalink)  
Старый 06.02.2011, 14:10
Аспирант
Отправить личное сообщение для DenQ Посмотреть профиль Найти все сообщения от DenQ
 
Регистрация: 28.08.2010
Сообщений: 57

x-yuri, а чего ты так разнервничался?
Я выбрал такой метод, потому что сроки маленькие. Ну и опыта соответственно не много, пока что... Так что все нормально.
Ответить с цитированием
  #10 (permalink)  
Старый 06.02.2011, 14:33
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

тебе показалось
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
получить значение по клику gudzik Общие вопросы Javascript 6 11.12.2012 18:22
Как получить значение аттрибута вложенного тэга по id losk Events/DOM/Window 4 21.11.2009 10:08
Скрипт калькулятора (не могу добавить еще одно значение) Jee_Day Я не знаю javascript 2 22.05.2009 13:19
Не могу получить высоту из css asci Общие вопросы Javascript 5 30.03.2009 13:31
Кроссброузерно определить значение атрибута faunder Общие вопросы Javascript 5 21.02.2009 22:08