$$() - получение доступа к элементам $$a() - работа с ajax $$c() - работа с cookie $$e() - работа с событиями $$f() - отправка форм через ajax $$i() - динамическое подключение скриптов стилей и создание элементов $$r() - работа с событием window.onload $$s() - набор полезных функций по работе с экраном, мышью, браузером, элементами, числами и т.д.
<form id="test_form" method="post" enctype="multipart/form-data"> <input type="file" name="upload_file" /> </form><br /><br /> <div id="status">Тут будет статус загрузки</div><br /><br /> <div onclick="SendFile();">Отправить файл через Ajax</div><br />
Пишем для него функцию отправки
<script type="text/javascript"> function SendFile() { $$f({ formid:'test_form',//id формы url:'ajax.php',//адрес на серверный скрипт который будет принимать файл onstart:function () {//действие при начале отправки файла на сервер $$('status','начинаю отправку файла'); }, onsend:function () {//действие по окончании отправки файла на сервер $$('status',$$('status').innerHTML+'<br />файл успешно загружен'); } }); } </script>
Чтобы получить ответ от сервера, содержимое файла ajax.php может быть таким:
<?php if($_FILES['upload_file']['size']>0) { echo ' <script type="text/javascript"> var elm=parent.window.document.getElementById("status"); elm.innerHTML=elm.innerHTML+"<br />Получен файл '.$_FILES['upload_file']['name'].' размером '.$_FILES['upload_file']['size'].' байт"; </script> '; } ?>
Для проверки поддерживает и браузер кукисы можно использовать следующий код:
<script type="text/javascript"> //проверяю поддержку cookie браузером if($$c.test()) { alert('браузер поддерживает cookie'); } else { alert('браузер не поддерживает cookie'); } </script>
<form id="test_form" action="comment.php" method="post"> Имя: <input type="text" name="name" /><br /> Комментарий: <textarea name="comment"></textarea> </form><br /> <div id="result">Тут будет статус загрузки</div><br /><br /> <div onclick="SendForm();">Отправить форму через Ajax</div><br />
Ее можно отправить на сервер через AJAX с помощью кода
<script type="text/javascript"> function SendForm() { //отправка файла на сервер $$f({ formid:'test_form',//id формы url:'comment.php',//адрес на серверный скрипт, такой же как и в форме onstart:function () {//действие при начале отправки $$('result','начинаю отправку');//в элемент с id="result" выводим результат }, onsend:function () {//действие по окончании отправки $$('result',$$('result').innerHTML+'<br />комментарий успешно отправлен');//в элемент с id="result" выводим результат } }); } </script>
Чтобы получить ответ от сервера, содержимое файла comment.php может быть таким:
<?php if(isset($_POST['name'])) { echo' <script type="text/javascript"> var elm=parent.window.document.getElementById("result"); elm.innerHTML=elm.innerHTML+"<br />Получено имя '.str_replace("\r","",str_replace("\n","<br />",htmlspecialchars(stripslashes($_POST['name'])))).' с текстом '.str_replace("\r","",str_replace("\n","<br />",htmlspecialchars(stripslashes($_POST['comment'])))).' "; </script> '; } ?>
Чтобы динамически подключить скрипт, а также после его загрузки выполнить из него код, нужно выпонить следующий код
<script type="text/javascript"> function GetScript() { //Подключаю внешний скрипт и запускаю из него метод $$i({ create:'script', attribute: { 'type':'text/javascript', 'src':'http://nagon.net/js/NRMSLib.js'//адрес на подключаемый скрипт }, insert:$$().body, onready:function() { modules.sound.start();//этот метод запускается уже из подключенного скрипта } }); } GetScript(); </script>
Дописываю вышепоказанный код, теперь он будет запускаться сразу после загрузки сайта:
<script type="text/javascript"> //выполнение кода только после загрузки документа $$r(function() { //Подключаю внешний скрипт и запускаю из него метод $$i({ create:'script', attribute: { 'type':'text/javascript', 'src':'http://nagon.net/js/NRMSLib.js'//адрес на подключаемый скрипт }, insert:$$().body, onready:function() { modules.sound.start();//этот метод запускается уже из подключенного скрипта } });
<div id="result">Тут будет ответ от сервера</div><br /><br /> <div onclick="SendGet();">Отправить GET запрос через Ajax</div><br /> <div onclick="SendPost();">Отправить POST запрос через Ajax</div><br /> <div onclick="SendHead();">Отправить HEAD запрос через Ajax</div><br />
Пишем код
<script type="text/javascript"> function SendGet() { //отправляю GET запрос и получаю ответ $$a({ type:'get',//тип запроса: get,post либо head url:'ajax.php',//url адрес файла обработчика data:{'q':'1'},//параметры запроса response:'text',//тип возвращаемого ответа text либо xml success:function (data) {//возвращаемый результат от сервера $$('result',$$('result').innerHTML+'<br />'+data); } }); }
function SendPost() { //отправляю POST запрос и получаю ответ $$a({ type:'post',//тип запроса: get,post либо head url:'ajax.php',//url адрес файла обработчика data:{'z':'1'},//параметры запроса response:'text',//тип возвращаемого ответа text либо xml success:function (data) {//возвращаемый результат от сервера $$('result',$$('result').innerHTML+'<br />'+data); } }); }
function SendHead() { //отправляю HEAD запрос и получаю заголовок $$a({ type:'head',//тип запроса: get,post либо head url:'ajax.php',//url адрес файла обработчика response:'text',//тип возвращаемого ответа text либо xml success:function (data) {//возвращаемый результат от сервера $$('result',$$('result').innerHTML+'<br />'+data); } }); } </script>
Содержимое файла ajax.php
<?php if(isset($_GET['q'])) { header("Content-type: text/txt; charset=UTF-8"); if($_GET['q']=='1') { echo 'запрос GET успешно обработан, q = 1'; } else { echo 'карявый GET запрос'; } } if(isset($_POST['z'])) { header("Content-type: text/txt; charset=UTF-8"); if($_POST['z']=='1') { echo 'запрос POST успешно обработан, z = 1'; } else { echo 'карявый POST запрос'; } } ?>
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Здравствуйте, подскажите какой тег использовать для увеличения значения, пример на картинке.
Вроде, про такой тег я слышала. Если есть тег прогресс бар, значит и такое должно быть.
Question
perepyk
ScriptJava Framework
* работа с элементами
* работа с ajax
* динамическая подгрузка скриптов
* динамическое создание элементов
* динамическая подгрузка css стилей
* отправка файлов через ajax
* отправка формы через ajax
* работа с cookie
* работа с событиями
* работа с браузером, экраном, числами, элементами
Подробный мануал на русском
http://scriptjava.net/
Поддерживает все современные браузеры!
Краткое описание функций
Примеры на scriptjava:
Отправка файла через AJAX
Вначале нужно подключить сам scriptjava фреймворк
Для отправки файлов серверу есть такая форма
Пишем для него функцию отправки
Чтобы получить ответ от сервера, содержимое файла ajax.php может быть таким:
Работа с cookies
Вначале нужно подключить сам scriptjava фреймворк
Для проверки поддерживает и браузер кукисы можно использовать следующий код:
Вот так можно установить кукисы на 10 секунд
Вот так можно считать кукисы
Для удаления установленных кукисов достаточно использовать такой код
Отправка формы через Ajax.
Вначале нужно подключить сам scriptjava фреймворк
Допустим на странице сайта у нас есть форма
Ее можно отправить на сервер через AJAX с помощью кода
Чтобы получить ответ от сервера, содержимое файла comment.php может быть таким:
Динамическое подключение скриптов
Вначале нужно подключить сам scriptjava фреймворк
Чтобы динамически подключить скрипт, а также после его загрузки выполнить из него код, нужно выпонить следующий код
Дописываю вышепоказанный код, теперь он будет запускаться сразу после загрузки сайта:
Отправка GET, POST, HEAD запросов через AJAX
Вначале нужно подключить сам scriptjava фреймворк
Поместим на сайт такой html код
Пишем код
Содержимое файла ajax.php
Остальные примеры смотрите на оф сайте фреймворка
Link to comment
Share on other sites
12 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.