Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.08.2009, 17:20
Аспирант
Отправить личное сообщение для artwalek Посмотреть профиль Найти все сообщения от artwalek
 
Регистрация: 11.12.2008
Сообщений: 44

Передача параметра из checkbox в asp страницу
Друзья, подскажите пожалуйста.

Как передать параметр из (небольшой кусочек кода):
<input type="checkbox" name="item" value="698" />


в .asp файл с помощью AJAX?

Т.е. есть некая страница, на которой есть checkbox. Кликая на этот checkbox небходимо сделать Request.Form("item") на другой .asp странице с помощью AJAX, для того, чтобы сделать какое-то действие, исходя из параметра item.

Надеюсь понятно объяснил.

Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2009, 10:26
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Вы знаете с помощью чего(AJAX) это делается.
В чем дальнейшие трудности?!
На сайте представлены отличные статьи, в том числе и по AJAX.
Что вам мешает по ним составить необходимый себе код?
Или вы хотите полностью готового кода от нас, не приложив при этом собственных усилий?
Если я ошибаюсь, то задайте свой вопрос более конкретно.
Ответить с цитированием
  #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.
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2009, 14:24
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

В XSLT переменную нужно получать так:
<xsl:value-of select="{$Code}" />

В твоём случае нужно делать так:
<input type="checkbox" name="item" id="item" onclick="javascript:getAjaxData('total.asp', 'Total');">
  <xsl:attribute name="value"><xsl:value-of select="{$Code}" /></xsl:attribute>
</input>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача параметра Лимонадный Джо Общие вопросы Javascript 8 25.01.2011 22:19