Extjs NumberField 有两个文本框,当输完第一个文本框内容点击回车后,第二个文本框显示和第一个文本框内容*0.0003,该如何实现?我做了一个监听事件,第二个输入框不显示显示值。希望各位高手帮忙。var txthtje=new Ext.form.NumberField({fieldLabel:"合同金额",name:"htje",anchor:"90%",allowBlank:false});
var txtyzsfJe=new Ext.form.NumberField({fieldLabel:"应缴印花税",name:"yzsfJe",anchor:"90%",allowBlank:false,readOnly:true,blankText:"根据合同金额自动计算,不需要输入!"});
var formwh = new Ext.form.FormPanel({
labelAlign:"right",
Align:"center",
buttonAlign: "center",
frame:true,
bodyStyle:"padding:10px",
method:"post",
monitorValid:true,
items:[{
xtype:"fieldset",
title: "应缴印花税",
autoHeight:true,
items:[
{layout:"column",
items:[
{columnWidth:.5,layout:"form",items:[txthtje]},
{columnWidth:.5,layout:"form",items:[txtyzsfJe]}
}
]
}],
txthtje.addListener(
{
specialKey:function (field,e){
if (e.getKey() == Ext.EventObject.ENTER){
htjechange();
}
},
change:function (field,newValue,oldValue){
htjechange();
}
});
function htjechange(){
txtyzsfJe.setRawValue(txthtje.getValue*0.0003);
};
执行之后输完第一个输入框回车后,第二个输入框显示“NaN”,把“*0.0003”去掉,输完第一个输入框回车后,第二个输入框显示“function() { return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this))); }”,为什么会这样,我是新手,刚用ext不久,望高手不吝赐教!
var txtyzsfJe=new Ext.form.NumberField({fieldLabel:"应缴印花税",name:"yzsfJe",anchor:"90%",allowBlank:false,readOnly:true,blankText:"根据合同金额自动计算,不需要输入!"});
var formwh = new Ext.form.FormPanel({
labelAlign:"right",
Align:"center",
buttonAlign: "center",
frame:true,
bodyStyle:"padding:10px",
method:"post",
monitorValid:true,
items:[{
xtype:"fieldset",
title: "应缴印花税",
autoHeight:true,
items:[
{layout:"column",
items:[
{columnWidth:.5,layout:"form",items:[txthtje]},
{columnWidth:.5,layout:"form",items:[txtyzsfJe]}
}
]
}],
txthtje.addListener(
{
specialKey:function (field,e){
if (e.getKey() == Ext.EventObject.ENTER){
htjechange();
}
},
change:function (field,newValue,oldValue){
htjechange();
}
});
function htjechange(){
txtyzsfJe.setRawValue(txthtje.getValue*0.0003);
};
执行之后输完第一个输入框回车后,第二个输入框显示“NaN”,把“*0.0003”去掉,输完第一个输入框回车后,第二个输入框显示“function() { return this.fixPrecision(this.parseValue(Ext.form.NumberField.superclass.getValue.call(this))); }”,为什么会这样,我是新手,刚用ext不久,望高手不吝赐教!
function htjechange(){
txtyzsfJe.setRawValue(txthtje.getValue*0.0003);///这里用setValue()不行吗?
而且写错了 txtyzsfJe.setRawValue(txthtje.getValue()*0.0003);
};
xtyzsfJe.setRawValue(txthtje.getValue()*0.0003);//getValue()后面少个小括号