Показать сообщение отдельно
Старый 23.07.2009, 09:52   #1
Неактивный пользователь
 
Регистрация: 23.07.2009
Сообщений: 1
Репутация: 0
По умолчанию Ajax post, результат как html+javascript код проблемы

Есть код ajax запроса
Код HTML:
function validate_form_new( my_form, types )
{
	var url = "classes/ajax-valid.class.php?form=" + types;

	var params = new Array();
	for ( i = 0 ; i < my_form.elements.length ; i++ ) {
		if( my_form.elements[i].getAttribute("check_value") != null )
		{
			var tmp = my_form.elements[i].id + "=" + encodeForPHP(my_form.elements[i].value);
			params.push(tmp);
		}
	}

	var sent_params = params.join("&");

	var http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!http_request) {
		document.getElementById( my_form.id+"Div" ).innerHTML = "Ошибка : Невозможно создать экземпляр класса XMLHTTP";
		return false;
	}

	http_request.open('POST', url, true);
	http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http_request.setRequestHeader("Content-length", sent_params.length);
	http_request.setRequestHeader("Connection", "close");
	http_request.onreadystatechange = function() { alertContentsForm_new(my_form,http_request); };
	http_request.send(sent_params);
}

function alertContentsForm_new(my_form,http_request)
{
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			document.getElementById( my_form.id+"Div" ).innerHTML = http_request.responseText;
		}
		else {
			document.getElementById( my_form.id+"Div" ).innerHTML = "С запросом возникла проблема.";
		}
	}
}
и есть "ajax-valid.class.php", который в качестве результата возвращает обратно либо форму с ошибкой и javascript код
Код HTML:
<?php

.......

echo<<<HTML
<script type="text/javascript">
	........
	document.getElementById("login_acc").value = "$val";
	........
</script>
HTML;

?>
который заполняет форму значениями, либо что все ок!


Народ подскажите пожалуйста почему в данном случае возвращаемый javascript код не обрабатывается???
Когда делаю тоже самое с GET запросом то все выполняется корректно!

Последний раз редактировалось genius70707; 23.07.2009 в 11:37..
genius70707 вне форума
 
Ответить с цитированием Вверх
 
Время генерации страницы 0.11922 секунды с 10 запросами