Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Присвоение переменых текстовых полей (http://www.flasher.ru/forum/showthread.php?t=198437)

eft.ya 26.04.2013 19:34

Присвоение переменых текстовых полей
 
Есть 3 текстовых поля,два в первом кадре input-"cc" и dinamic-"c2",один во втором dinamic-"c3".когда вводишь какой либо текст в input,происходит переход к следующему кадру,если input пусто,то в dinamic-"c2" выводится "введите данные".Потом тот текст который был введен в input должен выводиться в dinamic-"c3" во втором кадре.
Почему то поле сс в любом разе не пусто а undefined.
Вот такой код не работает:
Код AS1/AS2:

on(release) {
        if (cc==undefined){c2="введите свои данные";stop()} else {
        gotoAndStop('111 в1',2);}
        c3=cc.text;       
}

в с3 выводится "undefined"

Bletraut 26.04.2013 19:47

Че то тут совсем бредятина. Что бы узнать пусто ли в текстовом поле нужно использовать

Код AS1/AS2:

 if (cc.text == ""){c2="введите свои данные";stop()}...

И тут наверное так должно быть

Код AS1/AS2:

c2.text="введите свои данные";stop()} else {
 gotoAndStop('111 в1',2);}
 c3.tetx=cc.text;


eft.ya 26.04.2013 19:56

дело в том что я пробовала предлагаемый вами способ,он не работает.поле не пусто,даже если в него ничего не вводили

Добавлено через 1 минуту
в моем коде все работает,кроме того что в dinamic-"c3" не выводится то что нужно.а по поводу "введите свои данные" все норм

Bletraut 26.04.2013 21:23

Скорее всего проблема в том что они стоят на разных кадрах и dinamic-"c3" не существует на первом кадре, поэтому
Код AS1/AS2:

 c3.tetx=cc.text;

отправляется в несуществующий объект. Думаю что лучше использовать переменную посредник в кадре, например, нозовем ее myText и записывать в неё данный текст который в последующем должен быть записан в dinamic-"c3", а во втором кадре где собственно стоит сам dinamic-"c3" писать
Код AS1/AS2:

c3.tetx=myText;


dark256 26.04.2013 22:17

1. Никаких кадров
2. под поле заводим переменную-флаг WAS_MODIFIED[номер_поля]
3. На каждое поле вешаем
поле.onChanged = function(){ ставим флаг в true }
........
Отсель и танцуем........

eft.ya 27.04.2013 10:05

не получается если даже просто проверить и вывести переменную input через trace.выводит undefined!
on(release) {
if (cc==""){c2="введите свои данные";stop()} else {
gotoAndStop('111 в1',2);}
var myText;
myText.text=cc.text;
c3.text=myText.text;
trace(myText.text);
просто переходит на след кадр,и выводит undefined в output.
как вообще сохранить введенную строку?

Hauts 27.04.2013 10:16

eft.ya, вообще принято предложения начинать с больших букв, ставить запятые, ставить пробел после точек и оформлять код в сообщениях с помощью соответствующих тэгов.

По теме: не пишите код на клипах, пишите в кадрах. Задача элементарная, вы все вокруг да около бродите.

Bletraut 27.04.2013 13:10

Цитата:

не получается если даже просто проверить и вывести переменную input через trace.выводит undefined!
on(release) {
if (cc==""){c2="введите свои данные";stop()} else {
gotoAndStop('111 в1',2);}
var myText;
myText.text=cc.text;
c3.text=myText.text;
trace(myText.text);
просто переходит на след кадр,и выводит undefined в output.
как вообще сохранить введенную строку?
Не так же делаете, событие Release стоит в клипе, а var myText; должно быть написано в кадре, в клипе нужно писать так:
Код AS1/AS2:

if (cc=="")
{
  c2="введите свои данные";stop()
}
 else
{
    myText.text=cc.text;
    gotoAndStop('111 в1',2);
}

Если и это не работает, в таком случае я вообще не понимаю что вам нужно %)

Код AS1/AS2:

trace(myText.text);

Почему вы так выводите, myText это просто строковая переменная.

alexcon314 27.04.2013 15:48

В изначальном варианте попробуйте вот так:
Код AS1/AS2:

on(release) {
 if (cc==undefined){c2="введите свои данные";stop()} else {
 gotoAndStop('111 в1',2);}
c3=cc; //c3=cc.text;
 }

И да, следите, пожалуйста, за правильным оформлением своих сообщений.

eft.ya 27.04.2013 17:42

Большое спасибо!!!!!


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

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