Apache flex 结合状态和验证程序-flash builder
我正在为我的学校项目做一个网上商店,我有一个无法解决的问题 现在,我制作了一个表单供用户填写,并添加了一些验证器来检查用户是否填写了正确的信息。用户填写表单后,可以单击submitbutton继续 我也在和各州合作,所以当我按下submitbutton时,我会进入下一页 现在我的问题是:即使用户没有填写表单并单击“提交”,他仍然会进入下一页。验证工作正常,但不会停止用户继续验证 这是我的验证码Apache flex 结合状态和验证程序-flash builder,apache-flex,flash-builder,validation,states,Apache Flex,Flash Builder,Validation,States,我正在为我的学校项目做一个网上商店,我有一个无法解决的问题 现在,我制作了一个表单供用户填写,并添加了一些验证器来检查用户是否填写了正确的信息。用户填写表单后,可以单击submitbutton继续 我也在和各州合作,所以当我按下submitbutton时,我会进入下一页 现在我的问题是:即使用户没有填写表单并单击“提交”,他仍然会进入下一页。验证工作正常,但不会停止用户继续验证 这是我的验证码 <mx:EmailValidator id="emailValidator"
<mx:EmailValidator id="emailValidator"
source="{email}"
property="text"
triggerEvent="change"/>
<mx:StringValidator id="nameValidator"
source="{Name}"
property="text"
requiredFieldError="Put in a name"
triggerEvent="change"/>
<mx:StringValidator id="SurnameValidator"
source="{Surname}"
property="change"
requiredFieldError="Put in a surname"
triggerEvent="click"/>
<s:NumberValidator id="PostcodeValidator"
source="{Postcode}"
property="text"
requiredFieldError="Put in a zipcode"
triggerEvent="change"/>
现在按钮代码
<s:Button label="submit"
id="submitButton"
click="currentState='Shoppingstate'"/>
您可以将submitButton的enabled属性绑定到验证器的状态我将对每个字段执行检查。首先将submit按钮click事件处理程序更改为正式方法:
<s:Button label="submit"
id="submitButton"
click="onSubmit(event)"/>
我的直觉告诉我这行不通;什么会阻止某人单击“提交”而不输入任何数据?默认状态(我怀疑)将处于活动状态。没有什么可以阻止您将enabled=false设置为默认状态。
protected function onSubmit(event:Event):void{
if((email.errorString == '') && (Name.errorString == '') && (Surname.errorString == '') (Postcode == '')){
currentState='Shoppingstate'
}
}