| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Не меняется атрибут name в input |
| Автор: Tony 4.10.2006, 12:12 | ||
| Vsem privet! ]Est' kod
IE ne menjaet zna4enie atrributa name |
| Автор: GIK 4.10.2006, 12:39 |
| Tony, это глюк ИЕ. Тут ничем не поможешь.... |
| Автор: Tony 4.10.2006, 12:44 | ||
na MSDN est' tolko tak
|
| Автор: 12345c 4.10.2006, 13:00 |
| А чем не устраивает то, что document.getElementById("rr").name правильно? Если в innerHTML остаётся неправильно - меняйте innerHTML. |
| Автор: Tony 5.10.2006, 16:12 | ||
Так и делаю,но о4ень гемройно.Вопрос из этой песни.Как можно заставить FF обновлять innerHTML.Например есть <input type="text" name="killer" value="killer"/>.Предпложим 4то ползователь ввёл текст в это поле.Затем берём иннерHTML из контейнера куда входит этот инпут и видим 4то value не изменилось. |
| Автор: skyboy 5.10.2006, 16:34 |
| так innerHTML - это код, который парсится и на основе которого строится дерево DOM. если изменяешь это свойство - опять происходит парсинг и дерево DOM меняется в соответсвии с изменениями innerHTML, а когда меняешь дерево DOM "напрямую" зачем изменять innerHTML? и главное - как?! например,меняем так: document.getElementsByTagName('div')[0].width= 100; это можно преобразовать в HTML следующим образом: <div width="100"> <div style="width: 100px;"> <div style="width: 100%">(если ширина родителя была равна "100px") Какой вариант "выбирать" браузеру? И надо ли этот выбор? |
| Автор: Tony 5.10.2006, 17:43 |
| Я так и знал 4то полезут в DOM.Зада4а такая:написать контрoл editTable.Тоесть таблица в я4ейки может быть любой компонент,например:инпут или ку4а 4екбоксов.Должнабыть функия добавления v таблицу новой строки(естественно со всеми компонентами где зна4ений дефаулт) и также удаления строки.При4ём если добавлается строка то у новых компнентов в строке name="elementsList[3].firstName", делаю ещё добавить тогда elementsList[4].firstNameи тогдалие.Если удалается мнe нужно все компоненты уменьшыть на -1 тогда elementsList[2].firstName elementsList[3].firstName.Добавление написал а вот удаление.Мне удаётся изменить name -1 ,no v FF стираются введённуе зна4ения в поля.Тоесть становятся такие как сервер прислал(валуе="аааа",пользователь изменил на ббббб,беру innerHTML,a on не изменённый).ДОМ парсить сюда не подайдёт т.к. я не знаю 4то в я4ейки(какой контрол:текст,ареа,оптионс).Каро4е такие дела. |
| Автор: Sardar 5.10.2006, 21:18 | ||||
А почему innerHTML должен был измениться? Tony, всё смахивает на конкретно не верное представление что есть вёрстка, ты с ней как будто с текстом работаешь. Нужно скопировать строку таблицы со всем содержимым? Ну так достань таблицу:
И нет проблем с потерей вёрстки в таблице если работать через innerHTML. |
| Автор: Tony 6.10.2006, 12:34 |
| Sardar ты правелно понял.Но не всё так просто как кажется ,как поменять валуе ? Это первое, а втарое в я4ейки таблицы могут быть разли4ные компоненты(селект со вложенными оптионс, радио...)Там просто не реалнуй парсинг будет да хотя ладно с ним.Наме я поменял,а валуе как?Посмотри первый пример каторуй я превёл там валуе не меняется(в innerHTML). |
| Автор: Sardar 6.10.2006, 15:47 | ||||
Ну что это за вопрос? Разве input.value="что то другое" уже отменили?
Существует три типа элементов форм: input, textarea, select; всё остальное из области фантастики или не правильного восприятия вёрстки. Тебе ничего парсить не нужно (parse в понятии зачитывать/разбирать текст). Бегать по HTML DOM'у не так интересно без XPath, но getElementsByTagName() в принципе (с большой натяжкой) хватает. Приведи пример сложности, порешаем.
Мне трудно понять о чём ты. В innerHTML value не будет меняться, т.к. ни в одном стандарте не сказанно, что бы он менялся, да и innerHTML сам особо в стандартах не встречаеться, ибо пережиток прошлого - восприятие удобного DOM дерева как текст. P.S. на форуме нормальный транслит, неужели сложно отключить поделие чем ты сейчас пользуешся и писать по человечески, а то сложно читать. |
| Автор: Tony 6.10.2006, 21:31 |
| Sardar ты предлагаешь делать всё 4ерз DOM.Остановлюсь на ДОМ. |