導航:首頁 > 編程語言 > extjs中store

extjs中store

發布時間:2023-01-24 05:56:27

① Extjs4 獲得store的數據

要獲取store里邊的數據的方法是在太多啦

varmyStore=Ext.create('MyExtJS.store.UserStore');
//idx是該記錄在store中的index,從0開始
var變數=myStore.getAt(idx).get('欄位名');

而且,在ext的組件中還有很多方法,他已經把store的record當作變數給你傳過來了,用起來相當方便,例如grid的監聽事件

lisenters:{
cellclick:function(g,t,i,r){
//這里的r就是表格被選中行的記錄
}
}

store還有很多 方法 可以取出其中的數據,具體內容,查閱extjs的官方api,搜索store即可!

純手敲,希望對lz有幫助~

② extjs store 的用法

store = new Ext.data.Store({
totalProperty:'results',
url : url,
autoLoad : true,
reader : dateReader
});
store.load({params:{start:0, limit:pagesize}});分頁
store.load();不分頁

③ extjs 獲取store部分值

代碼如下:
// ArrayStore
var keyNameStore = new Ext.data.ArrayStore({
fields: ['text', 'value'],
data : [
['商品編號','Meta_proctsNo'],
['商品名稱','Meta_proctName']
]
});

// 通過value值獲取keyNameStore裡面的text
function getFilterFieldLable(value){
var rt = "";
var rowIndex = keyNameStore.getCount();
for(var i=0;i<rowIndex;i++){
var record = keyNameStore.getAt(i);
var fields = Ext.util.JSON.encode(record.data);
var fieldObj = Ext.util.JSON.decode(fields);
if(value==fieldObj.value){
rt = fieldObj.text;
break;
}
}
return rt;
}

④ Extjs4 中store取值問題,涉及combobox

var records=myStore.findRecord("id", this.getValue()).getData();
alert(records.age)

⑤ 怎樣將數組轉換為extjs中的 store

執行以下代碼即可:
ction(){
//定義數據集對象
var bookStore = new Ext.data.Store({
autoLoad :true,
reader: new Ext.data.XmlReader({
totalRecords: "results",
record: "Book",
id: "id"
},
Ext.data.Record.create([
,
,
,
,
,

])
),
proxy : new Ext.data.HttpProxy({
url : 'bookext.do?method=getBookList'
})
})
//創建工具欄組件
var toolbar = new Ext.Toolbar([

]);
//創建Grid表格組件
var cb = new Ext.grid.CheckboxSelectionModel()
var bookGrid = new Ext.grid.GridPanel({
applyTo : 'grid-div',
frame:true,
tbar : toolbar,
store: bookStore,
stripeRows : true,
autoScroll : true,
viewConfig : {
autoFill : true
},
sm : cb,
columns: [//配置表格列
new Ext.grid.RowNumberer({
header : '行號',
width : 40
}),//表格行號組件
cb,
,
,
,
,
,

]
})
//創建新增書籍信息的form表單
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';//統一指定錯誤信息提示方式
var bookForm = new Ext.FormPanel({
labelSeparator : ":",
frame:true,
border:false,
items : [
{
xtype:'textfield',
width : 200,
allowBlank : false,
blankText : '書籍名稱不能為空',
name : 'bookName',
fieldLabel:'書籍名稱'
},{
xtype:'textfield',
width : 200,
allowBlank : false,
blankText : '書籍作者不能為空',
name : 'author',
fieldLabel:'作者'
},{
xtype:'combo',
width : 200,
allowBlank : false,
blankText : '必須選擇書籍類型',
hiddenName : 'bookTypeId',
name : 'typeName',
store : new Ext.data.Store({
autoLoad :true,
reader: new Ext.data.XmlReader({
totalRecords: "results",
record: "BookType",
id: "id"
},
Ext.data.Record.create([
,
,

])
),
proxy : new Ext.data.HttpProxy({
url : 'bookext.do?method=getBookTypeList'
})
}),//設置數據源
allQuery:'allbook',//查詢全部信息的查詢字元串
triggerAction: 'all',//單擊觸發按鈕顯示全部數據
editable : false,//禁止編輯
loadingText : '正在載入書籍類型信息',//載入數據時顯示的提示信息
displayField:'title',//定義要顯示的欄位
valueField : 'id',
emptyText :'請選擇書籍類型',
mode: 'remote',//遠程模式
fieldLabel:'類型'
},{
xtype:'textfield',
width : 200,
name : 'price',
fieldLabel:'金額'
},{
xtype:'textarea',
width : 200,
name : 'brief',
fieldLabel:'簡介'
},{
xtype:'hidden',
name : 'id'
}
],
buttons:[
{
text : '關閉',
handler : function(){
win.hide();
}
},{
text : '提交',
handler : submitForm
}
]
});
//創建彈出窗口
var win = new Ext.Window({
layout:'fit',
width:380,
closeAction:'hide',
height:280,
resizable : false,
shadow : true,
modal :true,
closable:true,
bodyStyle:'padding:5 5 5 5',
animCollapse:true,
items:[bookForm]
});
//顯示新建書籍窗口
function showAddBook(){
bookForm.form.reset();
bookForm.isAdd = true;
win.setTitle("新增書籍信息");
win.show();
}
//載入表單數據
function loadForm(bookId){
bookForm.form.load({
waitMsg : '正在載入數據請稍後',//提示信息
waitTitle : '提示',//標題
url : 'bookext.do?method=getBookById',//請求的url地址
params : ,
method:'GET',//請求方式
success:function(form,action){//載入成功的處理函數
//Ext.Msg.alert('提示','數據載入成功');
},
failure:function(form,action){//載入失敗的處理函數
Ext.Msg.alert('提示','數據載入失敗');
}
});
}
//提交表單數據
function submitForm(){
//判斷當前執行的提交操作,isAdd為true表示執行書籍新增操作,false表示執行書籍修改操作
if(bookForm.isAdd){
//新增書籍信息
bookForm.form.submit({
clientValidation:true,//進行客戶端驗證
waitMsg : '正在提交數據請稍後',//提示信息
waitTitle : '提示',//標題
url : 'bookext.do?method=addBook',//請求的url地址
method:'POST',//請求方式
success:function(form,action){//載入成功的處理函數
win.hide();
updateBookList(action.result.bookId);
Ext.Msg.alert('提示','新增書籍成功');
},
failure:function(form,action){//載入失敗的處理函數
Ext.Msg.alert('提示','新增書籍失敗');
}
});
}
}
//明細數據修改後,同步更新書籍列表信息
function updateBookList(bookId){
var fields = getFormFieldsObj(bookId);
var index = bookStore.find('id',fields.id);
if(index != -1){
var item = bookStore.getAt(index);
for(var fieldName in fields){
item.set(fieldName,fields[fieldName]);
}
bookStore.commitChanges();
}else{
var rec = new Ext.data.Record(fields);
bookStore.add(rec);
}
}
=====================================================================
2,後台部分的Action
/*
* 添加書籍
*/
public ActionForward addBookType(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
String title = request.getParameter("title");
String detail = request.getParameter("detail");
BookType bookType = new BookType();
bookType.setTitle(new String(title.getBytes("ISO8859-1"),"UTF-8"));
bookType.setDetail(new String(detail.getBytes("ISO8859-1"),"UTF-8"));
int bookTypeId = service.addBookType(bookType);
boolean isSuccess = true;
if(bookTypeId == -1){
isSuccess = false;
}
response.setContentType("text/json;charset=UTF-8");
response.getWriter().write("");
return null;
}

⑥ extjs中,對store復制的一些問題

我用的是MVC模式直接在不同的界面引用就可以回了,如:
xtype:'combo',
答 name : 'proctId',
fieldLabel:'訂購產品',
store : 'common.CommonProctStore',
要多處對同一個store進行操作可以給store添加監聽,如:
listeners : {
'beforeload' : function(store, operation) {
var loadMarsk = new Ext.LoadMask(document.body, {
msg : '載入中,請稍候...',
disabled : false,
store : store
});

loadMarsk.show();
}
}

⑦ 在ExtJS中,想批量添加,刪除Store裡面的記錄,應該怎麼做

增減可以用 store.add , store.insert , 刪除可以用 store.remove

這樣的問題專看看API就OK了屬....

http://docs.sencha.com/extjs/4.2.3/#!/api/Ext.data.Store-method-add

閱讀全文

與extjs中store相關的資料

熱點內容
骷髏教程圖 瀏覽:954
ps淘寶女包修圖教程 瀏覽:568
55公里app 瀏覽:556
欠費多少充多少為啥還用不了數據 瀏覽:607
蘋果7如何使用萬能鑰匙 瀏覽:254
微信文件傳送電腦 瀏覽:600
什麼app可以解壓百度雲rar 瀏覽:627
蘋果6sp換殼 瀏覽:956
海盜船k70rgb燈光配置文件 瀏覽:336
linuxfsstat 瀏覽:926
電腦文件有個鎖 瀏覽:441
ps多張pdf文件夾 瀏覽:2
怎樣壓縮文件能傳到qq郵箱 瀏覽:923
南昌房管局網站怎麼查備案 瀏覽:884
如何設置ipad下載密碼 瀏覽:458
ae信號干擾教程 瀏覽:548
電腦之前刪掉的文件怎麼找 瀏覽:805
索尼z1刷什麼系統升級 瀏覽:466
自創字體怎麼編程序 瀏覽:381
成都的蘋果售後服務電話號碼 瀏覽:698

友情鏈接