Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.07.2010, 17:57
pliska вне форума Посмотреть профиль Отправить личное сообщение для pliska Найти все сообщения от pliska
  № 1  
Ответить с цитированием
pliska

Регистрация: Jul 2010
Сообщений: 2
По умолчанию Переменная String в качестве условия IF

Добрый день.
у меня во флешке при нажатии на чекбокс формируется переменная

Код AS3:
var d:String = "3 && myList.floorNum[i]==10";
а затем мне нужно ее использовать в условии if

Код AS3:
if (myList.floorNum[i]==.................
но эту переменную туда не подставишь, так как нет такой записи в XML, которая бы равнялась "3 && myList.floorNum[i]==10"

Можете подсказть как можно использовать эту переменную в качестве условия?

Старый 14.07.2010, 18:14
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Никак, не используйте, а зачем вам такое нужно?
__________________
Hell is the possibility of sanity

Старый 14.07.2010, 18:14
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 3  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 pliska:
Вас сложно понять...
Вот вы пишите: "формируется переменная". И действительно, у вас в коде определяется переменная d, которой присваивается значение "3 && myList.floorNum[i]==10". Ок, дальше вы пишите: "нужно ее использовать в условии if". Кого её? Переменную d? Но, судя по коду, совсем не её. Что вы хотите получить?
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

Старый 14.07.2010, 18:34
pliska вне форума Посмотреть профиль Отправить личное сообщение для pliska Найти все сообщения от pliska
  № 4  
Ответить с цитированием
pliska

Регистрация: Jul 2010
Сообщений: 2
Опишу более подробно:
во флешке есть 6 чекбоксов - номера домов - выделяя которые пользователь формирует запрос. По нажатию кнопки "ПОИСК" появляется таблица с результатами поиска - номер дома, номер этажа, количество комнат


Код AS3:
var d:String = "";
var houseData:String = "";
var resulttable:table = new table();
var XML_URL:String = new String("http://localhost/sad/search.php");
var phprequest:URLRequest = new URLRequest(XML_URL);
var phploader:URLLoader = new URLLoader();
phploader.load(phprequest);
phploader.addEventListener(Event.COMPLETE, allLoad);
var myXML:XML;
var myList:XMLList;
function allLoad(e:Event):void 
{
	myXML = new XML(phploader.data);
	myList = myXML.children();
	for (var i:int = 0; i < myList.length(); i++)
	{
	searchtable.sendbtn.addEventListener(MouseEvent.CLICK, checkboxcollect);
	function checkboxcollect (e:MouseEvent):void
	{
		if (searchtable.checkhouse1.selected)
			{
			if (d == ""){houseData = "1";}
			else{houseData = " || myList.houseNum[i]=="1";}
			ds = d+houseData;
			}
		if (searchtable.checkhouse2.selected)
			{
			if (d == ""){houseData = "2";}
			else{houseData = " || myList.houseNum[i]==2";}
			d = d+houseData;
			}
		if (searchtable.checkhouse3.selected)
			{
			if (d == ""){houseData = "3";}
			else{houseData = " || myList.houseNum[i]=="3";}
			d = d+houseData;
			}
		if (searchtable.checkhouse4.selected)
			{
			if (d == ""){houseData = "4";}
			else{houseData = " || myList.houseNum[i]=="4";}
			d = d+houseData;
			}
		if (searchtable.checkhouse5.selected)
			{
			if (d == ""){houseData = "5";}
			else{houseData = " || myList.houseNum[i]=="5";}
			d = d+houseData;
			}
		if (searchtable.checkhouse6.selected)
			{
			if (d == ""){houseData = "6";}
			else{houseData = " || myList.houseNum[i]=="6";}
			d = d+houseData;
			}
 
		if (myList.houseNum[i]==d)
		{
		resulttable.houseField.text = resulttabla.houseField.text+myList.houseNum[i]+"\n";
		resulttable.floorField.text = resulttabla.floorField.text+myList.floorNum[i]+"\n";
		resulttable.roomField.text = resulttabla.roomField.text+myList.roomCount[i]+"\n";
		}
	}
	}
}
И вот к условию if (myList.houseNum[i]== нужно прикрутить переменную d

Старый 14.07.2010, 19:12
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 5  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Это то, на что хватило моего понимания, дальше я не понял, что требовалось сделать.
Код AS3:
var d:String = "";
var houseData:String = "";
var resulttable:table = new Table();
var XML_URL:String = new String("http://localhost/sad/search.php");
var phprequest:URLRequest = new URLRequest(XML_URL);
var phploader:URLLoader = new URLLoader();
phploader.load(phprequest);
phploader.addEventListener(Event.COMPLETE, allLoad);
var myXML:XML;
var myList:XMLList;
var checkboxes:Dictionary = new Dictionary();
checkboxes[0x01] = searchtable.checkhouse1;
checkboxes[0x02] = searchtable.checkhouse2;
checkboxes[0x04] = searchtable.checkhouse3;
checkboxes[0x08] = searchtable.checkhouse4;
checkboxes[0x0F] = searchtable.checkhouse5;
checkboxes[0x20] = searchtable.checkhouse6;
 
function allLoad(e:Event):void 
{
	myXML = XML(phploader.data);
	myList = myXML.children();
	for (var i:int; i < myList.length(); i++)
	{
		searchtable.sendbtn.addEventListener(MouseEvent.CLICK, this.checkboxcollect);
	}
}
function checkboxcollect(event:MouseEvent):void
{
	var checkbox:CheckBox;
	var mask:int;
 
	for (var i:int = 1; i < 0x20; i <<= 1)
	{
		checkbox = checkboxes[i];
		if (checkbox.selected) mask |= i;
	}
}
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 14.07.2010 в 19:14.
Создать новую тему Ответ Часовой пояс GMT +4, время: 17:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:47.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.