Добавление элемента с уникальным ID, уделение его!
Всем привет!
Пипец замучался уже!:help: Пишу модуль для TinyEditor который бы мне: 1. Добавлял мне элемент с уникальнымм числовым ID Типа такого <div id="1">Тут текст какой нить</div> 2. Выводил мне их 3. Удалял нужный элемент по запросу. Сейчас это работает в ручном режиме типа if <div id="1"> найден то проверяем есть ли <div id="2"> если нет то добавляем <div id="2"> и тд. Для удаления если найден <div id="1"> то заменяем на "". Ломаю голову как этот процесс автоматизировать! К вам вопрос, как лучше всего организовать добавление элементов, как лучше всего организовать поиск и вывод элементов, как удалять элементы, как добавлять новый элемент если например есть элемент id=1 и элемент id=5? Заранее благодарю! |
Ну, начнем с того, что id не может начинаться с цифры:)
|
Цитата:
Цитата:
document.getElementsByName('их_имя') Ну а дальше в цикле все они твои... :) |
Цитата:
http://javascript.ru/forum/events/13...a-s-cifry.html Думаю этим все сказано! Цитата:
Предположим получил я их в цикле! А дальшь то что? Как удалить например из строки: srt = '<div name="date">Текст 1</div><div name="date">Текст 2</div><div name="date">Текст 3</div><div name="date">Текст 4</div>'; элемент который содержит в себе (Текст 3), заведомо не зная что элемент содержит в себе именно (Текст 3) а не (Мама мыла раму) |
ksa предлагал вариант для DOM.
Если же в строке то тупо поставить инкремент и не париться за порядок. Т.е. каждый последующий = i++. Не думаю что точное следование по порядку(т.е. перезаписывание всего текста при каждом удалении) имеет какой-то смысл. |
Цитата:
Вот прикинь открыл ты редактор TinyEditor вызвал модуль! он тебе отобразил все элементы в цикле, например которые нашел по регулярному выражению /<div id=\"\d*\".*?<\/div>/ig и че, дальше то что? мне нужно воткнуть рядом с элементами кнопку удалить! а как я буду удалять если я не знаю id |
Цитата:
Цитата:
<!DOCTYPE html> <HTML> <HEAD> <TITLE></TITLE> <style> </style> <script> function Del() { var o=document.getElementsByTagName('div') var val=document.getElementById('item').value var i for (i=0; i<o.length; i++) { if (o[i].name!='date') { continue } if (o[i].innerHTML==val) { o[i].removeNode(true) break } } } </script> </HEAD> <BODY> <div name="date">Текст 1</div> <div name="date">Текст 2</div> <div name="date">Текст 3</div> <div name="date">Текст 4</div> <input type='text' id='item' value='Текст 3' /> <input type='button' value='Del' onclick='Del()' /> </BODY> </HTML> |
Часовой пояс GMT +3, время: 07:37. |