Я пытаюсь сделать что-то очень простое, пользователь щелкает ссылку, и где-то под ней появляется мини-форма с вводом файла для загрузки.
Однако мой код ajax не взаимодействует.Вместо этого он загружает всю текущую (я думаю) страницу.Некоторое время назад у меня снова возникла эта проблема, и мне удалось ее исправить, однако я не могу вспомнить, как я это сделал.
Теперь действительно странная вещь заключается в том, что, когда я пробую это на своемлокальный компьютер работает нормально, но на реальном веб-сервере - нет.
Код:
function ajaxRequest(targetUri, parameters, cbFunction){
if(window.XMLHttpRequest){
request = new XMLHttpRequest();
}else{
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.onreadystatechange = cbFunction;
request.open("POST", targetUri, true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.send(parameters);
}
function addImage(){
parameters = "action=ajaxRequest";
ajaxRequest("http://www.mysite.com/gallery/addImage.php", parameters, function(){
if((request.readyState == 4) && (request.status == 200)){
document.getElementById("formContainer").innerHTML = request.responseText;
}
});
}
И мой PHP-файл:
function addImage(){
echo '
<div class="mainBlockBody">
<form action="index.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="galleryAction" value="addImage" />
<input type="file" name="upFile" />
<input type="submit" value="Submit" />
</form>
</div>
';
}
if($_POST['action'] == 'ajaxRequest'){
addImage();
}
Ссылка и заполнитель:
<a href="javascript:addImage()">Add Image</a>
<div id="formContainer"></div>
Любая помощь очень ценится!
РЕДАКТИРОВАТЬ:
Я думаю, что я сузил проблему до ... дорожка.На этой странице http://bit.ly/dXrGY6 все работает нормально, используя относительный путь.Замена его абсолютным путем, таким как "http://www. .." или "../ test / .....", снова делает его неисправным.Я использую абсолютные пути в другом разделе моего сайта, и он отлично работает: http://bit.ly/fCmmjy.Я не знаю, почему это не работает здесь ...
Я не могу понять, что не так.Есть идеи?