Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.07.2011, 08:26
Аспирант
Отправить личное сообщение для weeklyTea Посмотреть профиль Найти все сообщения от weeklyTea
 
Регистрация: 18.12.2010
Сообщений: 42

jquery и innerHTML
есть такая страничка:
<!DOCTYPE html>
<html>
<head>
	<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
	<script type="text/javascript">
		window.onload = function(){
			var notjQuery = document.getElementById('qwerty');
			var jQuer = $('#qwerty');
			alert(notjQuery.innerHTML);
			alert(jQuer.innerHTML);
		}
	</script>
</head>
<body>
	<div id="qwerty">
		qwerty
	</div>
</body>
</html>

вопрос: почему во втором алерте вылазиет 'undefined' ?
Ответить с цитированием
  #2 (permalink)  
Старый 25.07.2011, 09:08
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Потому что, объект jquery - это всегда коллекция и не важно 1 там элемент или много, сделай jQuer[0].innerHTML и все будет ок. Но вообще я не рекомендую использовать это свойство с jQuery, ибо рискуете наплодить утечек памяти. В jQuery для манипуляций с DOM есть все необходимые методы.
__________________
kobezzza
code monkey
Ответить с цитированием
  #3 (permalink)  
Старый 25.07.2011, 11:09
Аспирант
Отправить личное сообщение для Black_Prince Посмотреть профиль Найти все сообщения от Black_Prince
 
Регистрация: 11.07.2011
Сообщений: 64

потому что в jquery есть специальная функция, которая возвращает вложенный хтмл в элементе: html();

alert(jQuer.html());
Ответить с цитированием
  #4 (permalink)  
Старый 25.07.2011, 11:14
Аспирант
Отправить личное сообщение для weeklyTea Посмотреть профиль Найти все сообщения от weeklyTea
 
Регистрация: 18.12.2010
Сообщений: 42

спасибо, учту.
Ответить с цитированием
  #5 (permalink)  
Старый 25.07.2011, 13:42
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

или сделать так...

jQuer*!*[0]*/!*.innerHTML
Ответить с цитированием
  #6 (permalink)  
Старый 25.07.2011, 14:11
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от melky Посмотреть сообщение
или сделать так...

jQuer*!*[0]*/!*.innerHTML
А я уже это писал выше
Цитата:
сделай jQuer[0].innerHTML и все будет ок.
Хотя ещё есть способ: jQuer.get(0).innerHTML
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 25.07.2011 в 14:42.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery и innerHTML() hrundel jQuery 14 29.04.2013 11:19
2 разных модуля на jQuery - как подключить? finder jQuery 4 23.03.2012 22:29
jQuery jTreeMenu plugin Seafnox jQuery 9 12.01.2010 21:55
JQuery + FireFox NOOB jQuery 4 02.11.2009 18:16
Как правильно подгрузить jQuery Siton jQuery 4 15.06.2009 09:54