Создать форум бесплатно: ixbb.ru :: Календарь на Март 2024 года: calendar2008.ru/2024/mart/

  Reply to this topicStart new topicStart Poll

Библиотека ScriptJava - Отправка формы через ajax.

, примеры на scriptjava
hyhy
  Отправлено: Feb 9 2012, 05:40 AM
Quote Post


  Солдат
*

Группа: Members
Сообщений: 5
Пользователь №: 3585
Регистрация:
30-October 10



ScriptJava Framework - $$().$$().$$().$$().$$()...

ScriptJava это JavaScript Framework, который создан для облегчения разработки динамических веб-приложений.

ScriptJava Framework

* работа с элементами
* работа с ajax
* динамическая подгрузка скриптов
* динамическое создание элементов
* динамическая подгрузка css стилей
* отправка файлов через ajax
* отправка формы через ajax
* работа с cookie
* работа с событиями
* работа с браузером, экраном, числами, элементами

Подробный мануал на русском
http://scriptjava.net/

Поддерживает все современные браузеры!

Краткое описание функций

CODE

$$() - получение доступа к элементам
$$a() - работа с ajax
$$c() - работа с cookie
$$e() - работа с событиями
$$f() - отправка форм через ajax
$$i() - динамическое подключение скриптов стилей и создание элементов
$$r() - работа с событием window.onload
$$s() - набор полезных функций по работе с экраном, мышью, браузером, элементами, числами и т.д.


CODE

$$()
$$a() - ajax
$$c() - cookie
$$e() - event
$$f() - forms
$$i() - insert
$$r() - ready
$$s() - scripts


Примеры на scriptjava:

Отправка файла через AJAX

Вначале нужно подключить сам scriptjava фреймворк

CODE

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>


Для отправки файлов серверу есть такая форма

CODE

<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 />


Пишем для него функцию отправки

CODE

<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 может быть таким:

CODE

<?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>
        ';
    }
?>


Работа с cookies

Вначале нужно подключить сам scriptjava фреймворк

CODE

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>


Для проверки поддерживает и браузер кукисы можно использовать следующий код:

CODE

<script type="text/javascript">
//проверяю поддержку cookie браузером
if($$c.test()) {
    alert('браузер поддерживает cookie');
}
else {
    alert('браузер не поддерживает cookie');
}
</script>


Вот так можно установить кукисы на 10 секунд

CODE

<script type="text/javascript">
//устанавливаю cookie
$$c.set('test', 'содержимое test', 10);
</script>


Вот так можно считать кукисы

CODE

<script type="text/javascript">
//читаю cookie
alert($$c.get('test'));
</script>


Для удаления установленных кукисов достаточно использовать такой код

CODE

<script type="text/javascript">
//удаляю cookie
$$c.erase('test');
</script>


Отправка формы через Ajax.

Вначале нужно подключить сам scriptjava фреймворк

CODE

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>


Допустим на странице сайта у нас есть форма

CODE

<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 с помощью кода

CODE

<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 может быть таким:

CODE

<?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>
    ';
}
?>


Динамическое подключение скриптов

Вначале нужно подключить сам scriptjava фреймворк

CODE

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>


Чтобы динамически подключить скрипт, а также после его загрузки выполнить из него код, нужно выпонить следующий код

CODE

<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>


Дописываю вышепоказанный код, теперь он будет запускаться сразу после загрузки сайта:

CODE

<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();//этот метод запускается уже из подключенного скрипта
        }
    });
 
});
</script>


Отправка GET, POST, HEAD запросов через AJAX

Вначале нужно подключить сам scriptjava фреймворк

CODE

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>


Поместим на сайт такой html код

CODE

<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 />


Пишем код

CODE

<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

CODE

<?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 запрос';
    }
}
?>



Остальные примеры смотрите на оф сайте фреймворка

PMEmail Poster
Top
ruitrjiu
Отправлено: Dec 7 2013, 05:01 PM
Quote Post


  Unregistered









Prime Over the pattern staff discussed the bedroom<br><br>from your major affordable. You start with signals, people selected the Fillista tombant fixture Burberry Handbags via IKEA $29. 99, impressed by way of a different mid-century cutting-edge basic the exact Henningsen Artichoke lamp meant for Poulsen Canada Goose Parka. We wanted to change and alleviate the main middle century take a look and make it again desirable. Your place possesses a classic new kitchen and that we needed to Canada Goose Coat continue to keep some of the fact that experience while in the place. As well as can nipper within the family members and we was going to keep it entertaining, revealed Turner.<br>
Mid-foot ( arch ) Inside Design Group of Beverly
Arch Interiors Style Gang of Beverly
Best Over the type party discussed the family room rrrrrr
Top
ruitrjiu
Отправлено: Dec 12 2013, 04:27 PM
Quote Post


  Unregistered









Do you consider of which Miley's EMAs<br><br>stunt was initially scandalous along with amazing, or possibly delivers the crop up super star undoubtedly become depleted with tips on how to amaze and even awe? Moncler Jackets Even more Produced by Factor: Miley Cyrus's 'Wrecking Ball' Video Parodied by Betty Whitened: Some other Superstars Spoof Miley Miley Cyrus Wanted Partially nude VMAs Efficiency: Strategy She's Removed Straight down I became seeing my favorite Womens Prada Handbags Facebook superstars The particular Fine Cousons and their best and newest cheap ugg training video using their company Young ones Take action string,<br>
You think that will Miley's EMAs
broadcasted the full blunt stunt on this occasion
broadcast the whole blunt stunt these times xxxxxx
Top

Topic Options Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0345 ]   [ 10 queries used ]   [ GZIP выключен ]