这可能是一个简单的问题要回答,但我有点困难,因为我对编程很陌生。我正在构建一个Django Web应用程序并使用ExtJS 3.4来构建界面。我的界面的一部分有一个文本字段和按钮,用于触发点击事件,我需要获取文本字段的值以传递给URL,但我不知道如何访问它。我知道如果我将一个对象定义为一个变量,但是当我在这个特定实例中使用xtype时,该怎么做。例如,这就是我的textfield对象的定义方式:
items: [{
xtype: 'textfield',
fieldLabel: 'Scenario Name',
id: 'scn_name',
allowBlank: false
}]
这就是我尝试在按钮的事件处理程序中访问textfield的值的方法:
var scnName = scn_name.getValue()
我得到的错误是
Uncaught TypeError: Object #<HTMLInputElement> has no method 'getValue'
但我知道textfield类有一个getValue()方法。我究竟做错了什么?如何访问使用类型?
创建的对象的属性和方法提前致谢,
罗
答案 0 :(得分:0)
您的scn_name
应该引用组件,而不是代表它的DOM元素。您可以使用以下命令获取对ExtJS组件的引用:
var scn_name = Ext.getCmp('scn_name');
然后你可以这样做:
var scnName = scn_name.getValue();
有关详细信息,请参阅:http://www.sencha.com/learn/getting-elements-and-components/
答案 1 :(得分:0)
您何时尝试访问文本字段?它是在一个立即执行的块(Ext.onReady
)内还是在一个定义(Ext.define
)内?
根据您的代码调用时间,您的组件可能尚未呈现。