#jquery #asp-classic
#jquery #asp-classic
Вопрос:
Использование Classic ASP для выполнения ajax-вызова jQuery на странице asp, которая возвращает HTML. Это работает нормально. Теперь я хотел бы вернуть не только HTML, но и некоторые числа, такие как recordcount, со страницы, которую я вызываю. Как мне это сделать?
Это мой вызов AJAX:
function sendCcbRequest(text) {
var jsonToSend = { text: escape(text) };
var jsonToSend={ id: 1, lastname: escape(text) } ;
$.ajax({
type: "POST",
url: 'test-ajax-handler.asp',
data: jsonToSend,
success: function(response) {
$('#output').append(response);
},
error: function() {
alert("error");
}
}); // end ajax
}
Страница, которую он вызывает, просто response.write выдает некоторый HTML. Я бы хотел, чтобы он также выдавал количество.
Ответ №1:
Вы могли бы заставить свою страницу ASP отправлять пользовательский HTTP-заголовок в ответе, например:
XHR-Count: 5
с:
Response.AddHeader "XHR-Count", "5"
а затем извлекает этот заголовок в success
обратном вызове:
$.ajax({
type: "POST",
url: 'test-ajax-handler.asp',
data: jsonToSend,
success: function(response, status, xhr) {
var count = xhr.getResponseHeader('XHR-Count');
alert(count);
$('#output').append(response);
},
error: function() {
alert("error");
}
});
Ответ №2:
верните ваши данные в виде JSON, например:
{"html":"<div>This is your HTML</div","count":3}
$.ajax({
type: "POST",
url: 'test-ajax-handler.asp',
data: jsonToSend,
dataType: "json",
success: function(response) {
$('#output').append(response.html);
$('#count').html(response.count);
},
error: function() {
alert("error");
}
});