Ajax.Updater
принимает в качестве параметра 1 два контейнера, в которые он будет обновлять успешный или неудачный ответ запроса на URL-адрес, указанный в параметре 2.
Что делает этот скрипт, так это то, что при загрузке страницы(Я перевел его ниже в DOMReady, что не совсем то же самое, но соглашение jQuery) AJAX-запрос отправляется на server_side.php
.Если он получает ответ, который он понимает, он немедленно отправляет другой запрос, чтобы поддержать сеанс.
Это похоже на ужасный дизайн.Если вы собираетесь делать что-то подобное, вам определенно нужно время ожидания между запросами.
Другая вещь, которая не очень удобна в этом сценарии, заключается в том, что каждый запрос AJAX обрабатывается одной и той же страницей - server_side.php
- полагаться на различные параметры для получения инструкций о том, какое действие выполнить.Казалось бы, чище просто запрашивать разные страницы для разных действий.
$(function() {
$('#btnSubmit').click(purchaseCD);
connectToServer();
});
function connectToServer() {
$.ajax({
url: "server_side.php",
success: function(res) {
$('#CD Count').html(res);
if(parseInt(res))
connectToServer();
},
error: function(xhr) {
$('#errors').html(xhr.responseText);
}
});
}
function purchaseCD() {
$.ajax({
url: "server_side.php",
success: function(res) {
$('#CD Count').html(res);
},
data: { num: $('#txtQty').val() },
error: function(xhr) {
$('#errors').html(xhr.responseText);
}
});
}