#jquery #ajax
#jquery #ajax
Вопрос:
Используя $.post, я отправляю некоторую информацию для входа на сервер. Это возвращает HTML-страницу, которую я ограничиваю классом с именем .LoggedIn
Затем я хочу повторно отправить эту информацию с помощью $.post на сервер. Я делаю это с помощью phonegap в приложении для Iphone, поэтому мне не нужно беспокоиться о междоменных проблемах.
Моя проблема в том, что данные из первого сообщения, похоже, не отправляются на второй сайт.. Все, что я получаю от моего второго скрипта, это undefined=undefined
.
Вот мой код —
$(document).ready(function() {
$.post("https://www.somesite.com /dyns/dologin?action=loginamp;origin=homepage", { login_ffNumber: "1111111", login_surname: "name" , login_pin: "1111"},
function(data) {
$('.result').html($('.loggedIn',data));
stuff = $('.loggedIn',data)
//alert(datatostring);
//alert(stuff);
sendtoserver(stuff);
});
function sendtoserver(stuff) {
$.post("http://31dayswithjustin.com/qf/1.1/qfgraber.asp?", stuff, function(data) {$('.server').html(data);} );
}
})
Ответ №1:
Поскольку ваша stuff
переменная получает ожидаемое значение, ваша ошибка заключается в отправке ее «как есть» (объект jquery) и не отправке ее содержимого в качестве именованного параметра. Самый простой способ отправить его должным образом был бы следующим:
function sendtoserver(stuff) {
$.post("your_url", {"stuff": stuff.html()}, function...} );
}
(Предполагается, что вы хотите отправить материал innerHTML)
Но вы должны получить stuff
параметр явно на сервере:
qfgrabber.asp:
<%
Dim stuff as String
stuff = Request.Form("stuff")
...
'(continue with your page using the 'stuff' variable when needed)
%>
(Я написал это в классическом ASP, потому что имя файла вашего сервера заканчивается на .asp
)
Надеюсь, это поможет