Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.08.2011, 22:27
Yes Yes вне форума
Интересующийся
Отправить личное сообщение для Yes Посмотреть профиль Найти все сообщения от Yes
 
Регистрация: 12.08.2011
Сообщений: 17

Jquery. Доступ к объектам в DOM. Селекторы
Как правильно обратиться к объекту по тегу и id, тоесть $("тег id") ?
Пытаюсь выбрать span конкретным id.

$("span#"+id).text("парампампам");

Как правильно это делается? Документацию к jquery наизусть уже выучил, ниче не выходит. Кто знает направьте путь истинный =)
Ответить с цитированием
  #2 (permalink)  
Старый 23.08.2011, 22:35
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

$("#"+id).text("парампампам");
для id не нужно указывать имя тега, так как id не может быть одинаковым у разных элементов.
Ответить с цитированием
  #3 (permalink)  
Старый 24.08.2011, 08:37
Yes Yes вне форума
Интересующийся
Отправить личное сообщение для Yes Посмотреть профиль Найти все сообщения от Yes
 
Регистрация: 12.08.2011
Сообщений: 17

Почему не может? Запрещено стандартом?
Только что проверил, в firefox работает этот код
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>it's work</title>
<script language="javascript" src="http://code.jquery.com/jquery-1.6.2.min.js" type="text/javascript"></script>
</head>

<body>
<p>Имеем два элемента с одинаковыми ID. При нажатии на кнопку изменяется 1 из элементов с тегом Span</p>
<div id="one">Div с id=one</div>
<span id="one">Span с с id=one</span>
<br>
<button>изменить текст в элементе span</button>
<script>
$(document).ready(function(){

$("button").click(function(){
$("span#one").text("Новый текст в Span ");
});

});
</script>

</body>
</html>


Код работает. Но проблема не решилась. Вот кусок моего кода
<ul id="1123" style="display: block;">
<li id="1124">
<img id="1124" class="file" src="images/file.gif">
<span id="1124" class="name" style="color: red;">Текст</span>
</li></ul>

В отдельном js файле выполняется функция при нажатии на span

//переменные используются в других функциях
var id; 
var obj;
$(document).ready(function()
{
$(".name").live('click', function(event)
		{

	id=$(event.target).attr("id");
	obj=$(event.target);
		
	console.log(id); //На этом участке есть id с цифрой 1124
	console.log($("span#"+id).text()); //а тут firebag пишет  (an empty string)
//............и дальше остальной код

Вот такая вот проблема, не могу понять почему при выполнении этого кода не меняется текст. Почему?

Последний раз редактировалось Yes, 24.08.2011 в 08:40.
Ответить с цитированием
  #4 (permalink)  
Старый 24.08.2011, 09:29
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Цитата:
Почему не может? Запрещено стандартом?
ДА.
Доступ к элементу: $(...)[n]
Ответить с цитированием
  #5 (permalink)  
Старый 24.08.2011, 11:01
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

раз вы начали делать "нестандартно", то и продолжайте так делать :
$("span").filter("#"+id).text();



Сообщение от Yes Посмотреть сообщение
Только что проверил, в firefox работает этот код
человек и на четвереньках бегать может, а ещё может доказывать свою правоту, что так удобней, так быстрей. Но мы то знаем. как со стороны это смотрится!
Ответить с цитированием
  #6 (permalink)  
Старый 24.08.2011, 11:17
Yes Yes вне форума
Интересующийся
Отправить личное сообщение для Yes Посмотреть профиль Найти все сообщения от Yes
 
Регистрация: 12.08.2011
Сообщений: 17

Сообщение от melky Посмотреть сообщение
раз вы начали делать "нестандартно", то и продолжайте так делать :
$("span").filter("#"+id).text();





человек и на четвереньках бегать может, а ещё может доказывать свою правоту, что так удобней, так быстрей. Но мы то знаем. как со стороны это смотрится!
Доказывать ничего никому не собирался, просто задал вопрос и показал что именно вводит в заблуждение. Вопрос решил другим способом.
Этот метод тоже возьму на заметку. Спасибо за ответы.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу сформулировать jQuery .live() для динамического DOM элемента artnik Events/DOM/Window 2 27.09.2015 00:30
(DOM) JQuery получение текста ссылки Mila Общие вопросы Javascript 5 25.04.2012 13:36
Создание элемента DOM в jQuery bartonom jQuery 8 08.05.2011 18:25
Как в jQuery получить доступ к фрейму или самому верхнему окну? Neokortex jQuery 7 20.12.2010 10:38
Доступ к поддереву, полученному через JQuery GRIG jQuery 2 27.04.2010 16:51