我正在使用ExtJS 3.4.0
我在“var new”变量中有一个表单,它来自Ext.Window()。
我需要执行在textfield和textarea之间进行检查的代码是否为空。
我的意思是如果textfield为空且textarea不是那么表单数据可以反过来提交。
此代码必须放在如下所示的代码中:
newform
.getForm()
.submit(
答案 0 :(得分:0)
我希望你能在我的例子中找到
Ext.onReady(function(){
var newForm=Ext.create('Ext.form.Panel',{
title:"Form",
items:[
{
xtype:"textfield",
fieldLabel:"Name"
},
{
xtype : 'textareafield',
name : 'message',
fieldLabel: 'Message'
}
],
renderTo:document.body
});
var win= new Ext.Window
({
title:"Window",
layout:'fit',
height:250,
width:300,
items:[newForm],
buttons:[
{
text:"Submit",
handler:function(){
var textFieldValue=newForm.items.items[0].getValue();
var textAreaValue=newForm.items.items[1].getValue();
if(textFieldValue!=""||textAreaValue!=""){
alert("you can submit the data");
}
else{
alert("you can't submit the data");
}
}
}
]
}).show();
});
答案 1 :(得分:0)
以下示例显示了包含文本字段和文本区域的表单。两者都是强制性的。
allowBlank::指定false以验证值的长度是否必须为> 0.如果为true,则无论可能应用何种vtype验证,空白值始终有效。
validate():布尔值 通过验证字段的当前值返回字段值当前是否有效,并在字段的有效性自上次验证后发生更改时触发validitychange事件。注意:已禁用的字段始终视为有效。
请参阅:http://docs.sencha.com/extjs/6.2.0/classic/Ext.form.Panel.html#ext-form-panel_example-usage
中的示例Ext.create('Ext.form.Panel', {
title: 'Simple Form',
bodyPadding: 5,
width: 350,
// The form will submit an AJAX request to this URL when submitted
url: 'save-form.php',
// Fields will be arranged vertically, stretched to full width
layout: 'anchor',
defaults: {
anchor: '100%'
},
// The fields
defaultType: 'textfield',
items: [{
fieldLabel: 'First Name',
name: 'first',
allowBlank: false,
validator: function(val) {
return (val.trim().length > 0) ? true : "This field may not be empty";
}
}, {
xtype: 'textarea',
fieldLabel: 'Last Name',
name: 'last',
allowBlank: false,
validator: function(val) {
return (val.trim().length > 0) ? true : "This field may not be empty";
}
}],
// Reset and Submit buttons
buttons: [{
text: 'Reset',
handler: function() {
this.up('form').getForm().reset();
}
}, {
text: 'Submit',
formBind: true, //only enabled once the form is valid
disabled: true,
handler: function() {
var form = this.up('form').getForm();
if (form.isValid()) {
form.submit({
success: function(form, action) {
Ext.Msg.alert('Success', action.result.msg);
},
failure: function(form, action) {
Ext.Msg.alert('Failed', action.result.msg);
}
});
}
}
}],
renderTo: Ext.getBody()
});