[DataSet] ??????

2011-12-27 13:14:20by ????

必输字段校验分为自动校验和手动校验

自动校验

在大多数情况下,在dataSet的field中设置了required="true"属性的必填字段都会在此dataSet提交前,自动进行校验

页面上的显示效果为:该必填字段变成红色,并提示校验不通过。如下图点击“提交”按钮后的效果

大致代码如下:


function submit_aaa_ds()
{
	$('aaa_ds').submit();
}

<a:dataSets>
	<a:dataSet id="aaa_ds" model="xxx">
		<a:fields>
			<a:field name="name" required="true"/>
		</a:fields>
	</a:dataSet>
</a:dataSets>

<a:form title="必填字段自动校验" >
	<a:textField name="name" bindTarget="aaa_ds" prompt="名称"  />
	<a:button click="submit_aaa_ds" text="提交"  />
</a:form>

		

手动校验

但是在一些特殊情况下,我们没有办法通过自动校验来完成。比如:

1.必填字段属于2个不同的dataSet,而提交的时候只提交其中1个

2.需要采用Aurora.request方法提交数据时

这个时候就需要采用手动校验。

手动校验通过调用dataSet的validate方法来完成校验,该方法返回一个boolean值,如果有未填项,会返回false。页面上的显示效果和自动校验相同,如下图点击“提交”按钮后的效果

大致代码如下:


function submit_aaa_ds() 
{
	if (!$('aaa_ds').validate()) 
	{
		return;
	}
	if (!$('bbb_ds').validate()) 
	{
		return;
	}
	$('aaa_ds').submit();
	
}

<a:dataSets>
	<a:dataSet id="aaa_ds" model="xxx">
		<a:fields>
			<a:field name="name" required="true"/>
		</a:fields>
	</a:dataSet>
	<a:dataSet id="bbb_ds" model="yyy">
		<a:fields>
			<a:field name="parent_name" required="true"/>
		</a:fields>
	</a:dataSet>
</a:dataSets>

<a:form title="必填字段手动校验" >
	<a:textField name="name" bindTarget="aaa_ds" prompt="名称"/>
	<a:textField name="parent_name" bindTarget="bbb_ds" prompt="父亲名称"/>
	<a:button click="submit_aaa_ds" text="提交"  />
</a:form>

		
Demo
    Attachments

      Comments

      0 Responses to the article

      暂时没有评论。

      发表评论