Показать сообщение отдельно
  #3 (permalink)  
Старый 11.08.2009, 14:12
Аспирант
Отправить личное сообщение для artwalek Посмотреть профиль Найти все сообщения от artwalek
 
Регистрация: 11.12.2008
Сообщений: 44

Gvozd

Да, конечно, не хочу готового кода.
У меня он есть.

Но не могу понять почему не работает.
Прошу прощения, что не привел его ранее

В XSLT файл прописываю checkbox:
<input type="checkbox" name="item" id="item" value="{@Code}" onclick="javascript:getAjaxData('total.asp', 'Total');" />


Прописываем контейнер для вставки:
<div id="Total"></div>


В {@Code} содержатся соответствующие значения, допустим 2341 (для примера)

Вот сам AJAX
function createXMLHttpRequest(){
	var objHR;
	if (window.XMLHttpRequest){
		objHR = new XMLHttpRequest();
	}else if (window.ActiveXObject){
		objHR = new ActiveXObject('Msxml2.XMLHTTP');
		if (! objHR){
			objHR = new ActiveXObject('Microsoft.XMLHTTP');
		}
	}
	return objHR;
}

function getAjaxData(url, elementID){
	var xmlHttp;
	var xmlHttpResponseID;
	xmlHttpResponseID = document.getElementById(elementID);
	xmlHttpResponseID.innerHTML = '<strong>Loading...</strong>';
	xmlHttp = createXMLHttpRequest();
	xmlHttp.onreadystatechange = XMLHttpResponse;
	xmlHttp.open("GET", url, true);
	xmlHttp.setRequestHeader('CONTENT-TYPE', 'text/html; charset=windows-1251;'); 
	xmlHttp.send(null);

//XMLHttpRequest event handler
	function XMLHttpResponse(){
		if (xmlHttp.readyState == 4 || xmlHttp.readyState=='complete'){
			if (xmlHttp.status == 200){
				xmlHttpResponseID.innerHTML = xmlHttp.responseText;
//				xmlHttpResponseID.innerHTML = xmlHttp.responseStream;
	// вставлять в ASP - Response.ContentType = "text/html; charset=windows-1251" 
	// ? возможно поможет xmlHttp.responseStream ??
	//			xmlHttpResponseID.innerHTML = BinToText(xmlHttp.responseBody);
			}else {
				xmlHttpResponseID.innerHTML = '<strong>Error connecting to server</strong>';
			}
		}
	}
}


В файле total.asp прописываю пока для теста
<%
Response.Write Request.Form("item")
%>


Т.е. в итоге, мне нужно получить следующее:
кликаем на чекбокс и в контейнере должны получить число 2341

Если для теста, в total.asp для примера забить просто текст любов, в контейнер это словой при клике на чекбокс выгружается, т.е. все скрипты рабочие, но вот почему значение value не передается, не могу понять.

Спасибо.

Последний раз редактировалось artwalek, 11.08.2009 в 14:15.
Ответить с цитированием