function addphoto()
{
var ajaxRequest = initAjax();
if (ajaxRequest == false)
{
return false;
}
// Return Ajax result when the state changes later
ajaxRequest.onreadystatechange = function()
{
if(ajaxRequest.readyState == 4)
{
alert(ajaxRequest.responseText);
return ajaxRequest.responseText;
}
}
// Capture form elements
var values = {
"category" : encodeURIComponent(document.addphoto.category.options[document.addphoto.category.selectedIndex].value),
"photo_title" : encodeURIComponent(document.addphoto.photo_title.value),
"photo_descrip" : encodeURIComponent(document.addphoto.photo_descrip.value)
}
var queryString = '?', i = 0;
for (var key in values)
{
if (i != 0)
{
queryString += '&'
}
queryString += key + '=' + values[key];
i++;
}
// Execute Ajax
ajaxRequest.open("POST", "ajaxcheckform.php" + queryString, true);
ajaxRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxRequest.setRequestHeader("Content-length", queryString.length);
ajaxRequest.setRequestHeader("Connection", "close");
ajaxRequest.send(null);
}
function ajaxCheckform(formname)
{
var response = addphoto(); // <--This is undefined and not sure why
var responseObj = JSON.parse(response);
if (responseObj.success == 1)
{
// Successful form!
alert(responseObj.success_text);
}
else
{
// Error!
alert(responseObj.error);
}
}
Я уверен, что где-то совершаю какую-то базовую ошибку, но мне трудно ее найти.В этом сценарии ajaxCheckform () - это функция, которая выполняет одну из нескольких похожих функций.Выше я добавил addphoto (), которая является одной из нескольких функций, которые мне понадобятся, которые выглядят следующим образом.
Кстати, я хотел бы знать, что я могу вызывать функцию динамически.Функция addphoto () будет только одной такой функцией, вызываемой в данный момент, и я пытаюсь найти способ передать имя формы как нужную мне функцию.Я искал Stackoverflow и Google.Я не нашел ничего, что работает.
Обратите внимание, я знаю о jQuery, но я еще не там.Мне нужно, чтобы эта функция работала первой.