很难告诉你在做什么,李嘉图提到:
- 它看起来像你正在听
- 一个togglefield的变化情况,但它似乎不是标准的事件作为NEWVALUE将第二个参数和OLDVALUE第三
- 你的名字与按钮发射组件,这可能表明你正在听一个按钮,但该按钮将不会有值一togglefield
这将让你无处
如果这确实是togglefield请重写代码,以保持它的简单
- 我已经改变了您要设置为0和1的值显示当时将设置的内容。
- 我去掉了第二个if子句,因为它显然是相反的值。
- 我解释了每个值在做什么,因为您在参数
- 的错误位置上有newValue,否则在这里没有意义。我添加了一个简短的表格
。
/**
* togglefield change event
*
* @params {object} togglefield
* @params {number} newValue the value after the change
* @params {number} oldValue the value before the change
*/
onToggelNameChange: function (togglefield, newValue, oldValue) {
console.log('Togglefield ' + togglefiled.getName() + ' fired change event');
console.log('Togglefield is now set to: ' + !(!newValue));
// what is the scope of "this"? you better be sure
this.getCmp('headerCompleteDelivery').setValue(newValue);
// or you can try this approach. But make sure header has a value config.
var header = Ext.Viewport.down('#headerCompleteDelivery');
header.setValue(newValue);
},
你应该用不同的方法去。
- 使用形式
- 把toggelfield到表单,并添加一个名字到外地
- 一旦提交按钮被打得到的表单中的值(形式。的GetValues())
- 值内,您将有电流值的togglefield
这里一个例子:
查看
Ext.define('App.view.Main', {
extend: 'Ext.Container',
xtype: 'main',
config: {
items: [
{
xtype: 'form',
items: [
{
xtype: 'textfield',
name: 'name',
},
{
xtype: 'passwordfield',
name: 'password'
},
{
xtype: 'togglefield',
name: 'isActiveToggle',
label: 'Test Toggle Field'
},
{
xtype: 'button',
itemId: 'btnSubmit',
text: 'Submit'
}
]
}
]
}
});
控制器
Ext.define('App.controller.Main', {
extend: 'Ext.app.Controller',
config: {
refs: {
submitBtn: '#btnSubmit',
},
control: {
submitBtn: { tap: 'onSubmitBtnTap'},
}
},
onSubmitBtnTap: function (btn) {
var form = btn.up('.form'),
values = form.getValues();
// here you will get an Object with
{
name: 'Value of name field',
password: 'Value of password field',
isActiveToggle: true // <== this is the value you want to send
}
this.sendDataToServer(values.isActiveToggle); // your Ajax call with toggleValue
}
});
是,也许这有点奇怪,我是sencha touch的新手,我的需求是“注册”切换字段新值并将此值发送到后端。两种情况它不适合我,第一个发送“未定义”和第二个,一个模糊的消息“”什么是最好的方式?感谢Proto Bassi –
inane
2014-10-06 07:07:30
更新了我的帖子,用我的方式使用它 – Dinkheller 2014-10-06 07:43:20
我不知道我做错了,但我不能得到一个对象(例如)和getValues()我有一个错误... :-( – inane 2014-10-06 08:10:18