smartclient——DynamicForm

例:
DynamicForm.create({
ID:"demoForm",
numCols:4,
autoDraw:true,
cellPadding:5,
items:[
{title:"ID",name:"ID",showIf:"false"},
{title:"姓名",name:"uName"},
{title:"电话",name:uPhone"",ID:"uPhone"}
]
});


在DynamicForm中,items等同于fields,即以上代码等同于
DynamicForm.create({
ID:"demoForm",
numCols:6,
autoDraw:true,
cellPadding:5,
fields:[
{title:"ID",name:"ID",showIf:"false"},
{title:"姓名",name:"uName"},
{title:"电话",name:uPhone"",ID:"uPhone",colSpan:4}
]
});


DynamicForm默认列数为2即numCols:2,类似于table,每个tr有两个td,而form内的每一个item或field则默认为
占据一行两列(colSpan:2),即title一列,value一列。
例子中代码:numCols:6,即意为每行6列,也就是每行默认放置3个item(表单元素)。
autoDraw:true,意为自动渲染。当此Form为其他容器的子项时,一般设为false。
cellPadding:5,用来调表单元素之间的距离。
在代码{title:"ID",name:"ID",showIf:"false"}中,showIf用来控制Form内元素的隐藏,若不写showIf:"false"
当然是默认为显示了。
那么在{title:"电话",name:uPhone"",ID:"uPhone",colSpan:4}中,colSpan:4是用来做什么的呢?聪明的你一定一眼
就看明白了,对了,是用来合并列的,colSpan:4意味这uPhone这个元素要占据4列。
同样有合并列,就有合并行,合并行是rowSpan。


那么,我们如何取得Form表单内各元素的值呢?有三种方法:
1. 我们可以通过元素的ID来获取它们的值,例如:uPhone.getValue();
2.通过元素的名字来获取它们的值,例如:var uphone=demoForm.getValue("uPhone");
3.第三种与第二种类似,var uphone=demoForm.getItem("uPhone").getValue();
会取值之后,赋值也就会了吧。同样是三种方法:
uPhone.setValue("1384387438");
demoForm.setValue("uPhone","1384387438");
demoForm.getItem("uPhone").setValue("1384387438");

你可能感兴趣的:(form,smartClient,DynamicForm)