extjs4 - How do I enable only new rows in a Ext 4 Grid Panel? -


so have extjs 4 grid panel has 2 columns.

column one combobox custom renderer

ext.ux.comboboxrenderer = function(combo) {     return function(value) {         var idx = combo.store.find(combo.valuefield, value);         var rec = combo.store.getat(idx);          return (rec == null ? '<img src="/js/extjs4/resources/themes/images/default/grid/loading.gif" />' : rec.get(combo.displayfield) );     }; } 

column two numeric column

{   allowblank: false,   header: 'time',   dataindex: 'tedpaidtime',   align: 'right',   field: {      xtype: 'numberfield',      allowblank: false,      minvalue: 0,      maxvalue: 100000   },   flex: 0.20,   selectonfocus:true } 

now, when load datastore, want first column read only. easy if set readonly flag.

however, have button adds new record store , want new record not have readonly flag.

so basically, once change column 1 , save, can not alter it. able alter new records before saved.

the business rules here require them delete old record if it's incorrect.

thanks.

i able solve myself.

basically, recorded combo on selectionchange event. then, in focus event, checked see if had required data key store. if not, assume new row , ran following:

focus: function(combo) {            var cb = combo;            if(newtedetailrecord) {               if(newtedetailrecord.data["activitykey"] == "") {                  console.log("newtedetailrecord", newtedetailrecord);                  cb.seteditable(true);                  cb.setreadonly(false);                  cb.focus();                  cb.selecttext();               } else {                  cb.setreadonly(true);               }            }         }, 

Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -