2011-09-17 7 views
0

は、私はこのコードはExtJSに3.3.2Extjs4のストアからフィールドタイプを取得する方法は?

var f = store.fields.get(id); // store field name in parameter its return object 
alert(f.type.type); //its give me data type of that field 

の下で働いているが、コードの上にExtjs4でそう未定義

のその所与のエラーGETが機能していないExtjs4

を格納するフィールドタイプを取得するには文句を言いません私の痛みは

var data_sample = new Ext.data.SimpleStore({ 
    fields: [ 
     {name: 'yr', type: 'string'} 
     ,{name: 'sales', type: 'int'} 
     ,{name: 'expenses', type: 'int'} 
    ], 
    data: [['2004',1000,400],['2005',1170,460],['2006',860,580],['2007',1030,540]] 
}); 


var year = store.data.get(0).get('yr'); 
if (year.constructor == (new Date).constructor){ 
alert("date"); 
} 

ある

どのように店のフィールドタイプを知っています

これはIEブラウザの年に私にエラーを与えるがnullである

答えて

0

あなたは

var year = data_sample.data.get(id).get('yr'); 

、などのデータにアクセスすることができ、私は店のオブジェクトタイプのプロパティを見つけることができませんでしたが、 あなたはタイプを得ることができます

var type = typeof year; 

タイプintを取得する代わりに、タイプ番号を取得します。

はまだそれが正しい型にデータをキャストしますように、モデルで定義された型を保ちます。販売のためのデータが「1000」だったのであれば、それは私がするvar年= store.data.get(0)に.get(「年」)を使用して、日付タイプでこれを試してみてください1000年

+0

に変わるでしょう。 if(year.constructor ==(new Date)。コンストラクタ){ \t alert( "date"); }これは、ブラウザの年がnullであることに間違いを与えます。 – jayesh

関連する問題