PDA

Просмотр полной версии : валидация текстовых полей


NikolyA
28.02.2011, 05:59
Доброго времени

столкнулся с проблемой, есть 2 текстовых поля, это 2 компонента TextInput, один из которых labelCaption, второй labelNameInput и есть кнопка: labelBtnSave, появилась потребность сделать проверку, если в этих полях: labelCaption и labelNameInput есть данные текстовые либо числовые, значит при нажатии кнопки labelBtnSave - происходит какое либо событие (в моем случае в xml идет отсылка данных), если же нет данных в этих полях, то ничего не происходит, есть такой класс:

package panels
{

import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flash.text.TextFormatAlign;
import fl.controls.TextInput;
import fl.controls.TextArea;
import fl.controls.Label;

public class PanelTools extends Panel
{
private static var defaultStyles:Object = {
thumbViewerBackground: "PanelAnnotations_thumbViewerBackground",
captionModeDownSkin: "Panel_captionModeDownSkin"
}

public static function getStyleDefinition():Object {
return UIComponent.mergeStyles(Panel.getStyleDefinition(), defaultStyles);
}

protected var labelNameInput:TextInput;
protected var labelCaption:TextInput;

public function PanelTools():void
{
super();
}

protected function configLabel():void {
container.addChild(labelNameInput);
container.addChild(labelCaption);
labelBtnSave.addEventListener(MouseEvent.MOUSE_OVER, labelButtonsRolloverHandler, false, 0, true);
labelBtnSave.addEventListener(MouseEvent.MOUSE_DOWN, labelButtonsMouseDownHandler, false, 0, true);

}

protected function labelButtonsMouseDownHandler(event:MouseEvent):void {
var btn:Button = event.target as Button;
switch(btn) {
case labelBtnColor:
labelNameInput.enabled = false;
labelCaption.enabled = false;
labelBtnSave.enabled = false;
labelBtnDelete.enabled = false;
labelBtnCancel.enabled = false;
break;

case labelBtnSave:

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

}


default:
labelNodeEditing.@MEDIATYPE = "symbol";
}
}
break;
}
}
}

в case labelBtnSave, что нужно вписать чтоб была проверка

Спасибо

GBee
28.02.2011, 10:16
Может хватит проверки на длину введенного текста или нужен RegExp?

Если длина текста в labelCaption больше 0 и длина текста в labelNameInput больше 0, то вызываем метод сохранения, иначе показываем окошко с уведомлением.

NikolyA
28.02.2011, 14:28
Может хватит проверки на длину введенного текста или нужен RegExp?

Если длина текста в labelCaption больше 0 и длина текста в labelNameInput больше 0, то вызываем метод сохранения, иначе показываем окошко с уведомлением.

вообщем нужно что угодно, лишь бы работало :D
какой кусок кода вставить чтоб было так:
если в этих полях: labelCaption и labelNameInput есть данные текстовые либо числовые, значит при нажатии кнопки labelBtnSave - происходит какое либо событие

labelBtnSave - событие есть, данные текстовых полей пишутся в xml и далее из него считывает данные другое приложение и все прекрасно, вопрос с проверкой на данные введеные

in4core
28.02.2011, 15:39
А вы я так понимаю совсем в AS3 ни бум бум чтоле ?

if(labelCaption.text != '' && labelNameInput.text != '') { u code here }

NikolyA
28.02.2011, 18:09
А вы я так понимаю совсем в AS3 ни бум бум чтоле ?

if(labelCaption.text != '' && labelNameInput.text != '') { u code here }

ну не то что не бум бум, есть вещи которые я просто пока не допонял, поэтому и обратился за советом, или это запрещено до тех пор пока не разберусь сам?

GBee
28.02.2011, 20:22
in4core, вместо того, чтобы дать человеку подумать и догадаться, вы ему разжевали и в рот положили.

Psycho Tiger
28.02.2011, 20:32
или это запрещено до тех пор пока не разберусь сам?
Нет-нет, спрашивайте, мы Вам с радостью поможем. in4core это наша достопримечательность, не обращайте внимания.

in4core
28.02.2011, 22:55
Нет-нет, спрашивайте, мы Вам с радостью поможем. in4core это наша достопримечательность, не обращайте внимания. Зря выпендриваешься, я то все верно написал - человек выложил код, если он сам его писал знчит вопросов типа как пользоваться if не возникнет

Psycho Tiger
28.02.2011, 23:08
Зря выпендриваешься, я то все верно написал - человек выложил код, если он сам его писал знчит вопросов типа как пользоваться if не возникнет
А я и не писал, что код неправильный.

NikolyA
28.02.2011, 23:33
к сожалению вопрос исчерпан, спасибо in4core за подсказку, Psycho Tiger спасибо за in4core =)