Здравствуйте. Поставлена задача: Вывести значение переменной без рамки. Вывод без перегрузки страницы. я подошёл к этой задаче так: HTML: //по нажатию кнопки вызываю JC функцию передавая ей параметры из формы <input type="button" name="button" onClick="countALL(document.countPC.pcQuantity, document.countPC.serverQuantity, document.countPC.addresQuantity)"/></td> [js] //в теле JC функции передаю обратно в форму полученное значение //расчёт pay4address document.countPC.output4Addres.value = pay4addres; [/js] HTML: //передача производится в скрытое поле <input name="output4Addres" type="hidden" readonly="readonly" size="11" maxlength="128"/> а вот как поступать дальше, мозгов честно говоря не хватает. Сделал функцию JC: [js] function docW(text4output) { document.write(text4output); }[/js] передавая ей значение сразу после тега HTML: <input align="center" name="output4Addres" type="hidden" readonly="readonly" size="11" maxlength="128"/> <script language="JavaScript"> <!-- Скрыть docW(document.countPC.output4Addres.value); // --> </script> но она не перехватывает событие и не изменяется динамически с изменением output4Addres. Посоветуйте как мне быть дальше, или если есть другой подход просветите плз... P.S. если поставленная задаче не имеет решение пишите тоже.
Если хочешь, что бы таких проблем не было, забудь document.write() как страшный сон, и выучи DOM функции.
попробовал отловить событие onChange HTML: <input align="center" name="output4Addres" type="text" readonly="readonly" size="12" maxlength="128" onChange="docW(document.countPC.output4Addres.value)"/> не помогло.
хмм, вопрос по поводу DOM. Чтобы использовать DOM функции необходимо HTML-страницу на которой я хочу использовать этот механизм перевести в формат XML-документа?
флоппик механизм работы с DOM-функциями рассказать можешь? (кратко) или ссылку линконуть? если нет, то все равно спасибо с мёртвой точки дело хоть не много сдвинулось. еще раз благодарю
вот это, в приципе, работа через DOM. а зачем тебе onChange? Я так понял, тебе по нажатию на кнопку, надо внести цифру в скрытое поле и отобразить в определенном месте на странице?
флоппик да причём вывод не в тег input. просто строкой, но так чтобы она менялась каждый раз при нажатии кнопки рассчитать. я вот голову ломаю с утра... возможно ли такое бес перезагрузки страницы
я вот как думаю, что надо создать тэг, присвоить ему имя и просто присваивать ему значение через DOM, но как выделить этот тэг? HTML: <myTag name="myTag"> </myTag> так ? а значение будет выводится? если я напишу HTML: document.countPC.myTag.value = pay4addres;
Просто присвоить значение нельзя. Нужно добавить текстовую ноду. [js]<html> <body> <script type="text/javascript"> div = document.createElement('div'); div.appendChild(document.createTextNode('hello, world')); document.getElementsByTagName('body')[0].appendChild(div); </script> </body> </html>[/js]
то есть я понимаю алгоритм такой: Шаг 1. Создаю ноду HTML: <body> <script type="text/javascript"> div = document.createElement('div'); div.appendChild(document.createTextNode('hello, world')); document.getElementsByTagName('body')[0].appendChild(div); </script> </body> Шаг 2. По нажатию кнопки вызываю функцию [js] elemenet=document.getElementByTagName("body"); element.innerHTML = "Здесь <i>может быть<b>любой</b></i> HTML текст." document.getElementsByTagName('body')[0].appendChild(div) = elemenet; [/js]
готовый вариант [js] <body> <script type="text/javascript"> div = document.createElement('div'); document.getElementsByTagName('body')[0].appendChild(div); </script> </body> [/js] при нажатии на кнопку вызывается функция и выполняется подсчёт (в теле функции добавлена строка) [js] div.innerHTML = "любое значение"; [/js]
А почему не поставить сразу на страницу <div id="oops"></div> , а потом из js [js]document.getElementById("oops").innerHTML = "любое значение";[/js]