<input name="titile">
<input name="message">
</form>
Как сделать такой-же постинг, только на аяксе?
По-моему, если использовать jQuery, можно так:
$.post('post.php', {
title: 'Название',
message: 'Сообщение'}
Но не работает... Помогите, люди добрые.
З.Ы. Завтра в 14:00 выложу код обработчика запросов, если нужно будет.
Спустя 46 минут, 8 секунд (23.04.2010 - 00:23) John_761 написал(а):
jQuery не обязателен
Примерно так:
Дадим необходимым полям id для удобства и добавим кнопку, повесив на нее функцию, которая будет создавать экземпляр класса XMLHttpRequest, отправлять запрос и обрабатывать ответ
Вот код JS:
Блин, зачем я написал... тут все расписано
http://irbis-team.com/15/13/1
Примерно так:
Дадим необходимым полям id для удобства и добавим кнопку, повесив на нее функцию, которая будет создавать экземпляр класса XMLHttpRequest, отправлять запрос и обрабатывать ответ
<form action="post.php" method="post">
<input name="titile" id="title">
<input name="message" id="message">
<input type="button" name="button" value=" OK " onclick="myFunc()"/>
</form>
Вот код JS:
Свернутый текст
function xmlhttprequest()
{
if (window.XMLHttpRequest)
{
try {
request = new XMLHttpRequest();
} catch (e){/* nothing */}
} else if (window.ActiveXObject)
{
try {
request = new ActiveXObject('Msxml2.XMLHTTP');
} catch (e)
{
try {
request = new ActiveXObject('Microsoft.XMLHTTP');
} catch (e){/* nothing */}
}
}
return request;
}
function myFunc()
{
/**
* Создаем экземпляр класса
*/
var request = xmlhttprequest();
/**
* Это тело будущего запроса
*/
var postSend = null;
var title = document.getElementById('title').value;
var message = document.getElementById('message').value;
postSend = 'title=' + title + '&message=' + message;
/**
* Здесь нужно определить необходимый url - куда будет отсылаться запрос, то есть страница, где сервер будет обрабатывать полученные данные
*/
var url = '...';
/**
* true - Асинхронный запрос, POST - метод, url - выше определенный адрес
*/
request.open('POST', url, true);
/**
* Шлем заголовок
*/
request.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=utf-8');
/**
* Обработка ответа, 4 - ответ пришел полностью, 200 код состояния HTTP - OK
*/
request.onreadystatechange = function()
{
if (request.readyState == 4)
{
if (request.status == 200)
{
// код какой-нибудь
}
}
}
/**
* Отправляем запрос
*/
request.send(postSend);
}
Блин, зачем я написал... тут все расписано

http://irbis-team.com/15/13/1
Спустя 6 часов, 56 минут, 6 секунд (23.04.2010 - 07:19) Семён написал(а):
<form>
<input name="titile" id="title">
<input name="message" id="message">
</form>
<div id="result"></div>
<script>
var ms1 = encodeURIComponent($("#title").val());
var ms2 = encodeURIComponent($("#message").val());
var ms = "titile=" + ms1 + "&message=" + ms2;
$.ajax(
{
type: "POST",
data: ms,
url: "#URL#",
success: function(html){
$("#result").html(html);
}
}
);
</script>
Спустя 6 часов, 48 минут, 59 секунд (23.04.2010 - 14:08) uSide написал(а):
John_761,Семён, спасибо
Спустя 1 час, 44 минуты, 56 секунд (23.04.2010 - 15:53) Семён написал(а):
Обращайтесь
