Я пытаюсь сделать простой вызов AJAX на странице ASP, который сбрасывает переменные сеанса и отправляет небольшое сообщение обратно по завершении. Я делаю это исключительно для изучения AJAX.
Пример получен с веб-сайта W3 Schools, но с тех пор, как я применил его к моей странице, я не могу заставить его работать, и он не выдает никаких ошибок, что раздражает, потому что я не могу отладить его.
Это мой JS, который вызывается, когда пользователь нажимает кнопку [Очистить форму]:
function resetSearchForm()
{
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("notification").innerHTML=xmlhttp.responseText;
document.getElementById('notification').style.visibility = 'visible';
}
}
xmlhttp.open("GET","clearSearchData.asp",true);
xmlhttp.send();
document.searchFrm.searchStr.value='';
document.searchFrm.vertical.checked = true;
document.searchFrm.horizontal.checked = true;
document.getElementById('dateRange').selectedIndex = 0;
document.searchFrm.searchStr.focus();
}
И это ASP (clearSearchData.asp), который очищает мои переменные сеанса и пишет сообщение:
Response.Expires = -1
Session("search-str-boolean") = ""
Session("search-str-plain") = ""
Session("date-range") = ""
Session("date-from") = ""
Session("date-to") = ""
Session("specificDate") = ""
Session("peopleStr") = ""
Session("orientation") = ""
Response.Write "Form has been reset"
Кто-нибудь может увидеть, где я иду не так? Я давно на это смотрю и просто не вижу.
Сама функция работает, потому что обрабатывается последняя часть функции, бит, который очищает значения формы ... но ... вызов AJAX не происходит, потому что переменные сеанса по-прежнему содержат данные, а сообщение не ' т.
Большое спасибо заранее ...
ОБНОВЛЕНИЕ - - - - - - - - - - -
Теперь работает. Проблема заключалась в том, что я не включил полный URL-адрес страницы ASP. Спасибо за 'thedaian' (ниже) за указание на это