Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.12.2012, 21:39
Интересующийся
Отправить личное сообщение для a631s Посмотреть профиль Найти все сообщения от a631s
 
Регистрация: 05.09.2012
Сообщений: 14

как получить id???
фрагмент кода

<div class = "wrapper">
<div class = "inner"> 123 </div>
<div class = "inner"> 123 </div>
..............
<div class = "inner"> 123 </div>
</div>

дивы "inner" имеют свое наполнение, добавляются JS (jQuery), в общем не важно чем....

как можно получить ID дива "inner"?

Интересует подсказка-совет в какую сторону копать, чтоб найти правильный ответ
Ответить с цитированием
  #2 (permalink)  
Старый 28.12.2012, 22:02
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от a631s
как можно получить ID дива "inner"?
Не вижу ID в HTML коде для div.inne
Обратицо по порядковому номеру к любому div в обертке div.wrapper можно так
$("div.wrapper > div.inner").eq(N); //N - номер элемента от 0
var Len = $("div.wrapper > div.inner").length; //кол-во элементов
Ответить с цитированием
  #3 (permalink)  
Старый 28.12.2012, 22:41
Интересующийся
Отправить личное сообщение для a631s Посмотреть профиль Найти все сообщения от a631s
 
Регистрация: 05.09.2012
Сообщений: 14

Спасибо за ответ, но не то. Наверное криво вопрос задал.
По тому-же коду (#1) div.inner добавляется динамический, ID нельзя при добавлении приписать.
Где-то в DOM есть какой-то внутренний ID для этого элемента?
Если есть - как к нему добраться (узнать этот "служебный" ID)?
Конструкции типо $(this).closest("tr").find('th').eq(3) сносят крышу, но работают
Ответить с цитированием
  #4 (permalink)  
Старый 28.12.2012, 22:46
Аватар для lord2kim
Профессор
Отправить личное сообщение для lord2kim Посмотреть профиль Найти все сообщения от lord2kim
 
Регистрация: 03.05.2011
Сообщений: 848

a631s, вам Deff все правильно написал
как вы говорите
Сообщение от a631s Посмотреть сообщение
Где-то в DOM есть какой-то внутренний ID для этого элемента?
нету...есть порядковый номер в DOM (getElementsByTagName, getElementsByClassName)
Ответить с цитированием
  #5 (permalink)  
Старый 29.12.2012, 13:48
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

a631s,
Есть парядковая номерация. Её делать надо самому. Например:
var x=document.getElementById('id нужного элемента в котором идёт поиск и нумерация элементов');
var z=x.getElementsByTagName("*").length;
Ответить с цитированием
  #6 (permalink)  
Старый 29.12.2012, 14:30
Аспирант
Отправить личное сообщение для skfyann Посмотреть профиль Найти все сообщения от skfyann
 
Регистрация: 27.12.2011
Сообщений: 90

Сообщение от a631s Посмотреть сообщение
ID нельзя при добавлении приписать.
А почему нельзя?
Ответить с цитированием
  #7 (permalink)  
Старый 29.12.2012, 14:35
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

Сообщение от skfyann Посмотреть сообщение
А почему нельзя?
Попробуйте узнаете
Ответить с цитированием
  #8 (permalink)  
Старый 29.12.2012, 14:44
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Добавляем ID
<script src="http://code.jquery.com/jquery-latest.js"></script>

<div class = "wrapper">
 <div class = "inner"> 123 </div>
 <div class = "inner"> 123 </div>
 ..............
 <div class = "inner"> 123 </div>
 </div>

<script type="text/javascript">
$("div.wrapper > div.inner").each(function(i){
  $(this).attr('id','NewId_'+i);
});
alert($("div.wrapper").html());
</script>
Ответить с цитированием
  #9 (permalink)  
Старый 29.12.2012, 14:56
Аспирант
Отправить личное сообщение для skfyann Посмотреть профиль Найти все сообщения от skfyann
 
Регистрация: 27.12.2011
Сообщений: 90

Сообщение от koeshiro Посмотреть сообщение
Попробуйте узнаете
function IdGen(){
    id = 0;
    this.next = function(){
        return ("id_" + id++);
    }
    return this;
}
var gen = IdGen();

var div = document.createElement("div");
div.id = gen.next();

Как-то так, не?
Ответить с цитированием
  #10 (permalink)  
Старый 29.12.2012, 15:08
Кандидат Javascript-наук
Отправить личное сообщение для koeshiro Посмотреть профиль Найти все сообщения от koeshiro
 
Регистрация: 05.12.2012
Сообщений: 125

skfyann, мне кажется или функция вызывается всего раз?
http://javascript.ru/basic/syntax-switch-for#while больше подайдёт.
Определяем количество элементов
var x=document.getElementById('id нужного элемента');
var z=x.getElementsByTagName("*").length;

3апускаем
var i=0;
while(i<z) {\\Создаём элемент. Присваеваем id.
i++;
var div = '<div ';
div+='id=" + i + "';
div+='></div>'
}

Как то так. На счёт правописания честно . . . не уверен. Но что-то в этом духе.

Последний раз редактировалось koeshiro, 29.12.2012 в 15:15.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить значение TD zsaz jQuery 3 16.11.2011 16:00
как получить загружений урл iframe или frame NOCaut Events/DOM/Window 0 15.11.2011 14:51
Как в jQuery получить доступ к фрейму или самому верхнему окну? Neokortex jQuery 7 20.12.2010 10:38
Как получить указатель на элемент вызвавший функцию pelayo Общие вопросы Javascript 9 29.06.2010 23:32
Как получить список всех установленных плагинов VitAngel Internet Explorer 0 15.07.2009 09:13