AJAX. Он состоит из 2 частей: Java-скрипта, который будет выполняться в клиентском браузере и непосредственно отображать данные, и скрипта, непосредственно передающего эти данные. В твоём случае второй скрипт скорее всего будет на РНР. Как пользоваться AJAX'ом гугли - статей по этой технологии как собак нерезанных. Сам недолюбливаю, поэтому стараюсь не юзать.
Как взять элемент по классу, а потом применить метод .click() к нему ? например есть теги PHP: <div class="row"> fsdfsdf</div> <div class="row"> jhfghf</div> <div class="row"> рапр рапр</div> <div class="row"> парапрапр</div> <div class="row"> gdgdfgdfg</div> нужно скриптом кликнуть по каждому.
PHP: <script language="Javascript"> function chek() { var class_name = 'row'; var elements = document.getElementsByTagName('div') for (i = 0; i < elements.length; i++) { if (elements[i].className == class_name) { //Функция клика для elements[i] } } } </script>
Только что начал осваивать ajax. Но никак не получается исправить ошибку: Code: <html> <head> <title></title> <script language="JavaScript" type="text/JavaScript"> var request = null; function createRequest(){ try{ request = new XMLHttpRequest(); } catch(trymicrosoft){ try{ request = new ActiveXObject("Msxm12.XMLHTTP"); } catch (othermicrosoft){ try{ request = new ActiveXObject("Microsoft.XMLHTTP"); } catch(failed){ request = null; } } } if(request == null) alert("Ошибка при создании объекта!"); } function getNumber(){ createRequest(); var url = "getNumber.php"; request.open("GET", url, true); request.onreadystatechange = updatePage; request.send(null); } function updatePage(){ if(request.readyState == 4){ var newTotal = request.responseText; var numEl = document.getElementById("number"); replaceText(numEl, newTotal); } } </script> </head> <body> <h2>Число: <span id="number"></span></h2> <form method="GET"> <input value="Обновить" type="button" onClick="getNumber();"> </form> </body> </html> getNumber.php Code: <?php echo rand(1,9); ?> Число получаю, а вставляться оно не хочет в <span id="number"></span>. Останавливается на это строке - replaceText(numEl, newTotal); Помогите пожалуйста!
замени свою строку - replaceText(numEl, newTotal); я что-то такой функции не нашел(да и firebug говорит, что она undefined) на вот это document.getElementById("number").innerHTML = newTotal;
Всем привет! Есть такой код: он вставляет смайлик в поле у которого <textarea name="post_text"> Как сделать так, чтобы он работал не только с одним "post_text" но ещё с "post_text2" и "post_text3" ? Спасибо! С меня +
Code: <script language="javascript"> function insertext(smile) { for (i = 0; i < 4; i++) { if (i == 0) {name = 'post_text';} else {name = 'post_text_' + i;} window.opener.document.getElementById(name).value += ' ' + smile + ' '; } } </script>
FireFenix, спасибо, но я не подумал, что можно будет таким оброзом решить пробему... у меня не "post_text1", "post_text2", "post_text3" а "post_text" и "comments" Напишите пожалуйста код где только "post_text" и "comments" Спасибо!
Code: <script language="javascript"> function insertext(smile) { //Присваиваем elem_text объект с id="post_text" var elem_text = window.opener.document.getElementById('post_text'); //Добавдяем к значению elem_text текст смайла elem_text.value += ' ' + smile + ' '; //По аналогии с первым var elem_comm = window.opener.document.getElementById('comments'); elem_comm.value += ' ' + smile + ' '; } </script>
Тогда уж так. Code: function addText(id, smile) { opener.document.getElementById(id).value += ' ' + smile + ' '; }; addText('post_text', ':)'); addText('comments', '=/');
FireFenix, Ваш пример работает только с полем "post_text" в поле с "comments" он не вставляет смайл. astrologer, Ваш пример не работает ни с одним полем.
В примере astrologer лишнее "opener" или недорписанное "window" В обоих примерах используется функция getElementById("name"); где name - Id нужного тега (<input id="name" type="text">) => смотрите чтобы Id совпадал с Id тега, а так же Id было единственное на весь документ Если всёравно неработает - выложите html, что вы заполняете
У меня два поля Первое: <textarea name="comments" id="comments" > Второе: <textarea id="post_text" name="post_text" > Ваш пример вставляет в <textarea id="post_text" name="post_text" > а в <textarea name="comments" id="comments" > не хочет. На странице совподений id нет
я так думаю, у marlen меню/кнопка находится во всплывающем окне. Это следует из самого первого приведенного им(или ей) кода. А здесь могла бы быть длинная история о том, как происходит scope chain lookup. Но её не будет, лучше почитайте сами ecma-262.
Вот всё работает 1.html Code: <script language="javascript"> function show() { window_insert = window.open("2.html", 'window_insert', 'toolbar=no, location=no, directories=no, menubar=no, scrollbars=yes, resizable=no, status=no, height=400, width=600'); } </script> <textarea name="comments" id="comments">qwerty</textarea> <textarea id="post_text" name="post_text">asdfg</textarea> <br> <a href="javascript:show()">Show</a> 2.html Code: <script language="javascript"> function add() { smile = ':)'; var elem_text = window.opener.document.getElementById('post_text'); elem_text.value += ' ' + smile + ' '; var elem_comm = window.opener.document.getElementById('comments'); elem_comm.value += ' ' + smile + ' '; } </script> <a href="javascript:add()">Add</a>
PHP: <script src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.js"></script> <script> $(document).ready(function(){ $.ajax({ type: "POST", url: "qwerty.php", asynch: true, success: function (data){if (data=='ERROR'){document.location('http://бла_бла_бла');}} }); }); </script> Скрипт находится на html странице, и если получает от скрипта qwerty.php ERROR то происходит редирект на http://бла_бла_бла , а если OK то продолжает работу (на странице ничего не изменяется. Он почему-то не работает , и при "ERROR" редиректа не происходит =( Исправьте плиз.