Opened 13 years ago

Closed 12 years ago

Last modified 9 years ago

#3347 closed task (fixed)

FilteringSelect: should call getIdentity()

Reported by: bill Owned by: haysmark
Priority: high Milestone: 0.9beta
Component: Dijit - Form Version: 0.9
Keywords: Cc:
Blocked By: Blocking:

Description (last modified by bill)

FilteringSelect? should call getIdentity() to get the key for each entry in the drop down list.

Jared has already implemented getIdentity() in JsonItemStore?, so JsonItemStore? should have everything you need. In the unit tests there's a data file that serves as an example of how to specify item labels and item identifiers: http://trac.dojotoolkit.org/browser/dojo/trunk/tests/data/countries.json

Change History (6)

comment:1 Changed 13 years ago by bill

Description: modified (diff)
Summary: FilteringSelect: should call getIdentity() and getLabel()FilteringSelect: should call getIdentity()

comment:2 Changed 12 years ago by haysmark

Status: newassigned

comment:3 Changed 12 years ago by Douglas Hays

Resolution: fixed
Status: assignedclosed

(In [9101]) Fixes #3347. Proxy commit for haysmark. If you leave keyAttr blank on a FilteringSelect?, it uses the identifer field from the data.

comment:4 Changed 12 years ago by bill

Resolution: fixed
Status: closedreopened

Actually what I meant was to remove the keyAttr column and require that the data store specified implement getIdentity() and getItemByIdentity().

Interface to getItemByIdentity() might be changing to an async fetchItemByIdentity() so let's wait for that to settle. Given the current interface to getItemByIdentity(), you need to test for the item being loaded or not, as per Brian's mail:

function fetchItemByIdentity(id, callback){
    var item = store.getItemByIdentity(id);
    if(store.isItemLoaded(item)){
        callback.call(item);
    }else{
        store.loadItem({item:item, onItem:callback});
    }
} 

comment:5 Changed 12 years ago by Douglas Hays

Resolution: fixed
Status: reopenedclosed

(In [9228]) Fixes #3347. Proxy commit for haysmark. Removed keyAttr from FilteringSelect? (per bill).

comment:6 Changed 9 years ago by bill

Component: DijitDijit - Form
Note: See TracTickets for help on using tickets.