Extjs 에서 자주 사용 되 는 폼 소개 및 응용
form Ext.FormPanel
checkbox Ext.form.Checkbox
combo Ext.form.ComboBox
datefield Ext.form.DateField
field Ext.form.Field
fieldset Ext.form.FieldSet
hidden Ext.form.Hidden
htmleditor Ext.form.HtmlEditor
label Ext.form.Label
numberfield Ext.form.NumberField
radio Ext.form.Radio
textarea Ext.form.TextArea
textfield Ext.form.TextField
timefield Ext.form.TimeField
trigger Ext.form.TriggerField
폼 검증 에 있어 Extjs 는 매우 강력 한 지원 을 제공 합 니 다.뒤의 인 스 턴 스 에서 인 스 턴 스 분석 설명 을 발견 할 수 있 습 니 다.첫째,폼 패 널 만 들 기
function Read2() {
Ext.QuickTips.init();
var MyForm=new Ext.form.FormPanel({
title:' ',
width:300,
x:300,
y:50,
floating:true,
tools:[{id:'close'}],
frame:true,
bodyStyle:'padding:10px 0px 1px 1px',
labelSeparator:':',
labelAlign:'right',
renderTo:Ext.getBody(),// 'id1'
defaults:{xtype:'textfield',width:150,allowBlank:false,msgTarget:'side'},//
items:[
{
fieldLabel:' ',
name:'username',
id:'user',
emptyText:' ',
blankText:' '
},
{
fieldLabel:' ',
name:'userpassword',
id:'password',
inputType:'password',// radiocheck text( ) filepassword
blankText:' '
}
],
buttons:[{text:" "},{text:" ",handler:function(){alert(" !");}}],
buttonAlign:'center'
});
}
주의:renderto:'id1'이 때 폼 패 널 이 효력 을 잃 었 습 니 다.어떻게 된 일 인지 오래 생각 하지 못 했 습 니 다.기본 폼 구성 은 설명(일반적으로 우 리 는 xtype 을 이용 하여 items 의 구성 요소 유형 을 설명 합 니 다)fieldset 의 응용
function Read3() {
var MyformPanel=new Ext.form.FormPanel({
title:'fieldset ',
renderTo:Ext.getBody(),
frame:true,
width:350,
x:400,
y:50,
floating:true,
items:[
{
xtype:'fieldset',
title:' ',
collapsible:true,
autoHeight:true,
autoWidth:true,
defaults:{width:150,allowBlank:false,xtype:'textfield'},
items:[
{
fieldLabel:' ',
emptyText:' ',
blankText:' '
},
{
fieldLabel:' ',
inputType:'password',
blankText:' '
}
]
}
]
});
}
폼 패 널 의 기본 구성 요소 소개
function Read3() {
2 Ext.QuickTips.init();// tips
3 Ext.apply(Ext.form.VTypes,{
4 password:function(val,field){//val ,field ,
5 if(field.confirmTo){//confirmTo , id
6 var pwd=Ext.get(field.confirmTo);// confirmTo id
7 return (val==pwd.getValue());
8 }
9 return true;
}
});
var MyformPanel=new Ext.form.FormPanel({
title:'fieldset ',
renderTo:Ext.getBody(),
frame:true,
width:550,
x:400,
y:50,
draggable:{
insertProxy: false,//
onDrag : function(e){
var pel = this.proxy.getEl();
this.x = pel.getLeft(true);
this.y = pel.getTop(true);// panel
var s = this.panel.getEl().shadow;
if (s){
s.realign(this.x, this.y, pel.getWidth(), pel.getHeight());
}
},
endDrag : function(e){
this.panel.setPosition(this.x, this.y);//
}
},
plain:true,
floating:true,
items:[
{
xtype:'fieldset',
checkboxToggle:true,
checkboxName:'user',
title:' ',
collapsible:true,
autoHeight:true,
autoWidth:true,
labelSeparator:':',
labelAlign:'right',
labelWidth:70,
defaults:{width:150,allowBlank:false,xtype:'textfield'},
items:[
{
fieldLabel:' ',
emptyText:' ',
id:'user',
name:'userName',
blankText:' ',
anchor:'95%'
},
{
fieldLabel:' ',
inputType:'password',// password text checkbox rodio
id:'password',
name:'userpassword',
value:'0717',
blankText:' ',
anchor:'95%'
},
{
fieldLabel:' ',
id:'password2',
name:'userpassword2',
inputType:'password',
vtype:'password',
vtypeText:' ',
confirmTo:'userpassword',
anchor:'95%'
},
{
xtype:"datefield",
fieldLabel:" ",
anchor:"95%"
},
{
fieldLabel:' ',
value:'http://www.cnblogs.com/chenjq0717',
vtype:'url',
vtypeText:' url',
id1:'myblog',
name:'myblog',
anchor:'95%'
},
{
//alpha , ( , )
//2.alphanum// ,
//3.email//email , "[email protected]"
//4.url//url , http://www.langsin.com
fieldLabel:' ',
vtype:'email',
vtypeText:' ',
name:'email',
anchor:'95%'
},
{
xtype:"panel",
layout:"column",
fieldLabel:' ',
isFormField:true,
items:[{
columnWidth:.5,
xtype:"radio",
boxLabel:" ",
name:"sex"
//inputValue
},{
columnWidth:.5,
checked:true,
xtype:"radio",
boxLabel:" ",
name:"sex"
}]
},
{
xtype:"panel",
layout:"column",// table,
fieldLabel:' ',
isFormField:true,// , panel fieldLabel
items:[{
columnWidth:.5,// 50%
xtype:"checkbox",
boxLabel:" ",//
name:""
},{
columnWidth:.5,
xtype:"checkbox",
boxLabel:" ",
name:""
}]
},
{
xtype:'combo',
fieldLabel:' ',
name:'family',
store:<%=getfamilyData() %>,//
emptyText:' '
},
{
xtype:"htmleditor",
id:"myinfo",
fieldLabel:" ",
anchor:"99%"
}
]
}
]
});
}
폼 데 이 터 를 서버 submit submit:function(){this.getEl().dom.action='MyPages/GetForm.aspx',/제출 후 방향 을 바 꾸 는 페이지 this.getEl().dom.method='POST',/제출 자 this.getEl().dom.submit();/제출 실행},제출 버튼 버튼 추가:[{text:"확인",handler:login,formBind:true},{text:"취소",handler:reset}]제출 방법 추가:function login(){MyformPanel.form.submit();/제출}function reset(){MyformPanel.form.reset();/취소} 본 과 코드:폼 패 널 의 종합 응용
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Ext7.aspx.cs" Inherits="EXT1.Ext7" %>
2
3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5 <html xmlns="http://www.w3.org/1999/xhtml" >
6 <head runat="server">
7 <title> ,Extjs </title>
8 <link href="ext-3.2.0/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
9 <script src="ext-3.2.0/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="ext-3.2.0/ext-all.js" type="text/javascript"></script>
<script type="text/javascript">
function Read1() {
Ext.QuickTips.init();
var MyForm=new Ext.form.FormPanel({
title:' ',
width:300,
height:200,
x:300,
y:50,
floating:true,
tools:[{id:'close'}],
draggable:{
insertProxy: false,//
onDrag : function(e){
var pel = this.proxy.getEl();
this.x = pel.getLeft(true);
this.y = pel.getTop(true);// panel
var s = this.panel.getEl().shadow;
if (s){
s.realign(this.x, this.y, pel.getWidth(), pel.getHeight());
}
},
endDrag : function(e){
this.panel.setPosition(this.x, this.y);//
}
},
frame:true,
labelSeparator:':',
labelAlign:'right',
renderTo:Ext.getBody(),// 'id1'
items:[
new Ext.form.TextField({
fieldLabel:' ',
allowBlank:false,
blankText:' ',
msgTarget:'side'
}),
new Ext.form.TextField({
fieldLabel:' ',
allowBlank:false,
inputType:'password',
blankText:' ',
msgTarget:'side'
})
]
});
}
function Read2() {
Ext.QuickTips.init();
var MyForm=new Ext.form.FormPanel({
title:' ',
width:300,
x:300,
y:50,
floating:true,
tools:[{id:'close'}],
frame:true,
bodyStyle:'padding:10px 0px 1px 1px',
labelSeparator:':',
labelAlign:'right',
draggable:{
insertProxy: false,//
onDrag : function(e){
var pel = this.proxy.getEl();
this.x = pel.getLeft(true);
this.y = pel.getTop(true);// panel
var s = this.panel.getEl().shadow;
if (s){
s.realign(this.x, this.y, pel.getWidth(), pel.getHeight());
}
},
endDrag : function(e){
this.panel.setPosition(this.x, this.y);//
}
},
renderTo:Ext.getBody(),// 'id1'
defaults:{xtype:'textfield',width:150,allowBlank:false,msgTarget:'side'},//
items:[
{
fieldLabel:' ',
name:'username',
id:'user',
emptyText:' ',
blankText:' '
},
{
fieldLabel:' ',
name:'userpassword',
id:'password',
inputType:'password',
blankText:' '
}
],
buttons:[{text:" "},{text:" ",handler:function(){alert(" !");}}],
buttonAlign:'center'
});
}
function Read3() {
Ext.QuickTips.init();// tips
Ext.apply(Ext.form.VTypes,{
password:function(val,field){//val ,field ,
if(field.confirmTo){//confirmTo , id
var pwd=Ext.get(field.confirmTo);// confirmTo id
return (val==pwd.getValue());
}
return true;
}
});
var MyformPanel=new Ext.form.FormPanel({
title:'fieldset ',
renderTo:Ext.getBody(),
frame:true,
width:550,
x:400,
y:50,
draggable:{
insertProxy: false,//
onDrag : function(e){
var pel = this.proxy.getEl();
this.x = pel.getLeft(true);
this.y = pel.getTop(true);// panel
var s = this.panel.getEl().shadow;
if (s){
s.realign(this.x, this.y, pel.getWidth(), pel.getHeight());
}
},
endDrag : function(e){
this.panel.setPosition(this.x, this.y);//
}
},
submit: function(){
this.getEl().dom.action = 'MyPages/GetForm.aspx',
this.getEl().dom.method='POST',
this.getEl().dom.submit();
},
plain:true,
floating:true,
items:[
{
xtype:'fieldset',
checkboxToggle:true,
checkboxName:'user',
title:' ',
collapsible:true,
autoHeight:true,
autoWidth:true,
labelSeparator:':',
labelAlign:'right',
labelWidth:70,
defaults:{width:150,allowBlank:false,xtype:'textfield'},
items:[
{
fieldLabel:' ',
//emptyText:' ',
id:'user',
name:'userName',
blankText:' ',
anchor:'95%'
},
{
fieldLabel:' ',
inputType:'password',// password text checkbox rodio
id:'password',
name:'userpassword',
value:'0717',
blankText:' ',
anchor:'95%'
},
{
fieldLabel:' ',
id:'password2',
name:'userpassword2',
inputType:'password',
vtype:'password',
vtypeText:' ',
confirmTo:'userpassword',
anchor:'95%'
},
{
xtype:"datefield",
fieldLabel:" ",
anchor:"95%"
},
{
fieldLabel:' ',
value:'http://www.cnblogs.com/chenjq0717',
vtype:'url',
vtypeText:' url',
id1:'myblog',
name:'myblog',
anchor:'95%'
},
{
//alpha , ( , )
//2.alphanum// ,
//3.email//email , "[email protected]"
//4.url//url , http://www.langsin.com
fieldLabel:' ',
vtype:'email',
vtypeText:' ',
name:'email',
anchor:'95%'
},
{
xtype:"panel",
layout:"column",
fieldLabel:' ',
isFormField:true,
items:[{
columnWidth:.5,
xtype:"radio",
boxLabel:" ",
name:"sex"
//inputValue
},{
columnWidth:.5,
checked:true,
xtype:"radio",
boxLabel:" ",
name:"sex"
}]
},
{
xtype:"panel",
layout:"column",// table,
fieldLabel:' ',
isFormField:true,// , panel fieldLabel
items:[{
columnWidth:.5,// 50%
xtype:"checkbox",
boxLabel:" ",//
name:""
},{
columnWidth:.5,
xtype:"checkbox",
boxLabel:" ",
name:""
}]
},
{
xtype:'combo',
fieldLabel:' ',
name:'family',
store:<%=getfamilyData() %>,//
emptyText:' '
},
{
xtype:"htmleditor",
id:"myinfo",
fieldLabel:" ",
anchor:"99%"
}
]
}
],
buttons:[{text:" ",handler:login,formBind:true},{text:" ",handler:reset}]
});
function login(){
MyformPanel.form.submit();//
}
function reset(){
MyformPanel.form.reset();//
}
}
Ext.onReady(Read3);
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="id1">
</div>
</form>
</body>
<script type="text/javascript">
</script>
</html>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
J2EE Extjs4.0 Grid 페이지 표시ExtJS는 프런트엔드 사용자 인터페이스를 만드는 데 주로 사용되는 기본 및 백그라운드 기술 관련 프런트엔드 ajax 프레임워크 기능이 풍부해서 아무도 그 오른쪽을 벗어날 수 없다. 인터페이스의 아름다움이든 기능의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.