Ext.form.Panel 설정
2024. 8. 3. 22:20ㆍJavascript/Sencha
{
xtype: 'form',
title: 'Login',
frame: true,
bodyPadding: 5,
width: 250,
// 전송할 url 정보 설정
url: '/login',
// defaultType 설정
defaultType: 'textfield',
items: [
{
fieldLabel: 'ID',
name: 'username',
allowBlank: false,
labelWidth: 40,
emptyText: 'User ID',
},
{
fieldLabel: 'PW',
name: 'password',
allowBlank: false,
labelWidth: 40,
emptyText: 'Password',
inputType: 'password',
}
],
buttons: [
{
text: 'Reset',
handler: function() {
// 입력된 값 초기화
this.up('form').getForm().reset();
}
},
{
text: 'Login',
handler: function() {
let form = this.up('form').getForm();
let fields = form.getFields();
let errors = [];
// 입력된 값의 정합성 체크
if(form.isValid()) {
form.submit({
// header값 설정
headers: {
referer: /test',
},
// 파라메터값 설정
params: {
'_csrf': document.getElementById('_csrf').innerText
},
success: function(form, action) {
// 서버에서 보내온 json값 가져오기
let result = JSON.parse(action.response.responseText);
window.location.href = result.redirect;
},
failure: function(form, action) {
let result = JSON.parse(action.response.responseText);
Ext.Msg.alert('Failed', result.msg);
}
});
} else {
Ext.Msg.alert('Warning', 'Check input data!');
}
}
}
]
}
'Javascript > Sencha' 카테고리의 다른 글
Sencha에서 js 변수 사용하기 (0) | 2024.08.25 |
---|---|
Sencha에서 custom component 적용하기 (0) | 2024.08.25 |
Sencha post 방식으로 데이터 전송시, 동적으로 파라메터 추가 (0) | 2024.07.27 |
sencha에 외부 js 파일 import 하기 (0) | 2024.07.27 |
Main을 원하는 대로 변경 (0) | 2024.07.21 |