2012-02-21 64 views
0

我使用的是ext js。我在组合框中选择一个值,并使用此值作为参数来获取其他值(两个值)。现在我想将它添加到变量中,以便在除组合框之外的其他位置使用它。我怎样才能做到这一点?如何提取Ext.data.Model数组中包含的值?

var txtEP = new Ext.form.ComboBox({ 
    renderTo: "txtEP", 
    fieldLabel: 'End Point', 
    triggerAction: "all", 
    forceSelection: true, 
    mode:'local', 
    autoScroll: true, 
    allowBlank: false, 
    autoShow: true, 
    typeAhead:true, 
    store: genres, 
    valueField:'pincode', 
    displayField:'pincode', 
    emptyText:'Select a Start Point', 
    selectOnFocus:true, 
    listeners : { 
     'select' : function(){ 
      var selVal = this.getValue(); 
      store.load({ 
       url:'./genres1.php', 
       params: {pincode: selVal}, 
       callback: function(records) { 
        endpt = records; // here is where it is assigned 
       } 
      }); 
     } 
    } 
}); 

现在我的“endpt”现在包含Ext.data.Model的数组对象,因此它是提取您需要从他们值的方法。请帮我

+0

它看起来像你这样它了。这段代码有什么问题? – Krzysztof 2012-02-21 13:28:41

回答

0

Ext.data.Model有一个get方法。您将它传递给您想要获取值的字段的名称。在你的情况中,你提到某个地方/genres.php返回两个值,如果数据返回为一个记录有两个不同的列,如下所示:

column header:| value1 |值2

第1行: 'data1'| “数据2”

您可以分配两个这样的回调函数返回的数据值的变量,说你被点名了你的变量firstValue和secondValue:

firstValue = endpt[0].get('value1'); 
secondValue = endpt[0].get('value2'); 

相反,如果你的/genres.php返回数据为两个不同的行只用一个列标题是这样的:

列标题:值

行1: 'DATA1'

行2:“数据2”

你可以指定数据变量是这样的:

firstValue = endpt[0].get('value'); 
secondValue = endpt[1].get('value'); 
相关问题