如何在 extjs 中的 store 中插入值
Posted
技术标签:
【中文标题】如何在 extjs 中的 store 中插入值【英文标题】:How to insert values in store in extjs 【发布时间】:2012-10-31 10:26:59 【问题描述】:我正在用 extjs 实现项目。我对 extjs 很陌生。 我用两个文本字段问题和选项创建了视图,还创建了两个按钮作为确定和取消。
我的查看代码:
Ext.create('Ext.form.Panel',
title: 'Question-option',
width: 300,
bodyPadding: 10,
renderTo: Ext.getBody(),
items: [
xtype: 'textfield',
name: 'Question',
fieldLabel: 'Question',
allowBlank: false // requires a non-empty value
,
xtype: 'textfield',
name: 'Option',
fieldLabel: 'Option',
vtype: 'Option' // requires value to be a valid email address format
,
xtype: 'button', text: 'Ok',
xtype: 'button', text: 'Cancel'
]
);
在确定按钮上单击我想将这些文本字段数据添加到存储中。
那么您能否建议我如何编写 buttonclick 事件以将所有这些文本字段数据添加到存储中。
【问题讨论】:
【参考方案1】:以本店为例:
Ext.define ('model',
extend: 'Ext.data.Model' ,
fields: ['Question', 'Option']
);
var store = Ext.create ('Ext.data.Store',
model: 'model'
);
// Handler called on button click event
function handler (button)
var form = button.up('form').getForm ();
// Validate the form
if (form.isValid ())
var values = form.getFieldValues ();
store.add (
Question: values.Question ,
Option: values.Option
);
else // do something else here
您获取表单数据,然后将这些数据添加到存储中。
齐亚兹
【讨论】:
感谢您的回复。如果我还想在 gridview 中添加那些插入的问题及其选项,并且需要将该选项输入字段设置为空白文本框,以便为同一问题添加更多选项。并且在 gridview 中显示所有这些插入的选项。那么我应该怎么做呢? 只需将商店附加到网格面板。例如:Ext.create ('Ext.grid.Panel', title: 'MyGrid', width: 300, height: 300, store: store, columns: [name: 'Question', dataIndex: 'Question' , name: 'Option', dataIndex: 'Option']);如果你发现这个答案是正确的,请回答;) 当我在 onbuttonclick 事件上方插入时,view 没有得到 display.controller 代码 is-Ext.define('AM.controller.Users', extend: 'Ext.app.Controller', views :['user.List'] 存储:['Users'] 模型:['User'],初始化:function() this.control( "button": click: Ext.msg.alert("Heloo" ) ); onButtonClick: function(button) var form =button.up('form').getForm (); if (form.isValid ()) var values = form.getFieldValues (); store.add ( 问题: values.Question , 选项: values.Option ); );以上是关于如何在 extjs 中的 store 中插入值的主要内容,如果未能解决你的问题,请参考以下文章