Частичное изменение содержимого элемента
Для частичного изменения содержимого элемента, насколько я понял, используется InnerText, но он работает только в ИЕ.
Как получить часть содержимого InnerHTML? HTML Код:
<td id=1 onClick="Object.Method(this)"> Код:
Object.addToRange = function addToRange(cell){ |
у Вашего div задан id. так что обращайтесь прямо к нему:
getElementById('word_id').innerHTML Если не будет id, то через childNodes |
Я пытался так делать..но почему-то не получается.
Возможно, это связано с тем как я вызываю функцию (с параметром cell)? |
кстати да, бардак у вас с вызовом.
и id с цифры не может начинаться. вот <td onclick="myfunc()"> <div id="word_id">Id</div> Name </td> function myfunc(){ var mydata = document.getElementById('word_id').innerHTML; alert (mydata); } |
Цитата:
|
Цитата:
Маркеры ID и NAME должны начинаться с буквы ([A-Za-z]) и могут после буквы содержать любое количество букв, цифр ([0-9]), дефисов ("-"), подчеркиваний ("_"), двоеточий (":") и точек ("."). еще: Цитата:
|
я не спрашивал, что об этом написано в спецификации, действительно ли вы уверены, что id нельзя начинать с цифры?
Т.е по вашему, ниже приведенный код работать не будет? <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title></title> </head> <body onload="alert(document.getElementById(1).innerHTML)"> <div id=1>мда :)</div> </body> </html> |
IIIEPJIOK,
где будет работать? например,с XHTML-ным doctype-ом на мобильнике будет работать? а под Konquere? а под остальными браузерами? не факт. половина багов не-кросбраузерных скриптов свящана с нежеланием разработчиков браузеров следовать стандартам. вторая половина, из-за нежелания/неумения разработчиков скриптов следовать стандартам. В BOM-е есть объект window.elements его даже можно заставить нормально работать в мозилле, при помощи доктайпа. но, это не повод его использовать. потому что есть getElementByID, который работает одинаково хорошо во всех браузерах, и об этом известно наверняка |
IE, Opera FF, GoogleCrome, Safari и с xhtml доктайпом - будет - факт :)
Цитата:
|
Цитата:
Сейчас в mydata помещается содержание 1ой ячейки таблицы..а я хочу, чтобы текущей - именно той, на которую onclick срабатывает |
Цитата:
допишите к своей единичке буквы и протестируйте в браузерах. |
Ну, коль пятница, можно и по холливарить :)
Проверено в Опере, ГуглХром, ИЕ, Сафари и ФФ - работает <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title></title> </head> <body onload="alert(document.getElementById('1word').innerHTML + ' ' + document.getElementById('2word').innerHTML)"> <div id=1word>hello</div> <div id=2word>world</div> </body> </html> Также работатет (хоть это и полное безобразие) с <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
вот вам заняться нечем :)
за окном тяпница! эх, еще 221 минута и выходные! |
сдаюсь. :) пусть это останется на совести разработчиков браузеров
|
:)
|
Цитата:
|
а на мое сообщение предыдущее ответьте, плз:)
а то все выходные не усну :D |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
у вас что, несколько ячеек имеют одинаковый id? в целом, надо как-то примерно так: <td onclick="myfunc(this)"> <div id="word_id">Id</div> Name </td> function myfunc(obj){ var mydata = obj.getElementsByTagName('DIV')[0].innerHTML; alert (mydata); } может я где-то в чем-то ошибся, - поправьте. уже сижу на работе и засыпаю.... --edited x2 p.s. гы. карма: 9; кол-во постов: 99; ;D |
Цитата:
|
Ребята, извините что вклиниваюсь. Но тема ваша мне родна как никогда.
Мне надо в div или table (еще не решил) вставить html файл. Чтобы он обработался как html именно. Подскажите, бьюсь не могу найти решения. (если сложно описал проблему - извините, впервой). |
что означает "вставить html файл"? прочитать содержимое файла с диска и вставить содержимое в div или table? я могу ошибаться, но никак.
|
Не содержимое, а загрузить код. Что-то типа фрейма, но не фрейм. Я бы фреймом реализовал, но у него плохо работает скроллинг. Вернее ваще не работает, скролит только сам фрейм,а мне надо страницу.
|
Грузи ajax-ом и записывай в div
|
Цитата:
|
Тоже интересует подобный вопрос, можно ли в
document.body.innerHTMLв качестве параметра передать не строковую переменную, а ссылку на внешний файл с html-кодом. Это нужно, чтобы по событию обновлялась только часть страницы а не вся страница, возможно ли такое? |
Цитата:
|
спасибо, все уже решилось с помощью XMLHttpRequest
|
Часовой пояс GMT +3, время: 20:48. |