9
votes

I did successfully add a row double click event listener to my grid by:

listeners : {
    itemdblclick: function(dv, record, item, index, e) {
        alert('working');
    }
},

Now, I need to get the exact value in third column at the selected row, how can I do that ?

EDIT

Okay found it:

listeners: {
    itemclick: function(dv, record, item, index, e) {
        alert(record.get('name'));
    }
}

but seems like the result of record.get('name') is not a text! its an object but I cannot handle it as if it a text. any body has any idea ?

EDIT

For example, if I pass the name to search function: Search(record.get('name')); this won't work. but if I pass it this way: Search('Mike'); it works !

2
Will you know which column is bound at the third? IE, do you already know the dataIndex?Evan Trimboli
just updated my post. ThanksNoon
Are you sure? What object does record.get() give you?? If your data is a string, it'll give you a string. Can you inspect it in a debugger?gideon
yes I am sure, I got the name as string successfully but when I pass it to another function, it can't handle it, on the other hand if I pass the name itself (I type it), function works fine.Noon
you can look at your record data using console.log(record.data) or in your case console.log(record.get('name')). don't use alert()sra

2 Answers

4
votes

Ensure that

  • Your property name is really lowercase 'name' and not 'Name'
  • Print the value of the field into the console with console.log(record.get('name')) or use the direct access by typing console.log(record.data.name) or console.log(record.data['name']). Basically all should return the same.
  • To cast a value to string apply '' on the fly like var myVar = 2; myVar = myVar + ''; // now print 20 as string
0
votes

Try with,

listeners: {
itemclick: function(dv, record, item, index, e) {
 var selectedRec = dv.getSelectionModel().getSelected();          
 alert(selectedRec.get('name')); //Will display text of name column of selected record
}