JSFiddle - React, Tailwind, and code Playground

by Richard Ayotte

HTML

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dijit/themes/claro/claro.css">
<div id='sourceAddress'></div>
<div id='sourceAddress1'></div>
<div id='sourceAddress2'></div>

JavaScript

dojo.require('dojox.data.QueryReadStore');
dojo.require('dijit.form.FilteringSelect');

dojo.addOnLoad(function() {
    var delay = 2000;
    var value = 95;
    var value1 = 200;
    var value2 = 350;
    
    var customerAddressesPairsView = dojox.data.QueryReadStore({
        url: 'http://fiddle.jshell.net/gh/gist/response.json/2165866/'
    });

    var anotherAddressesPairsView = dojox.data.QueryReadStore({
        url: 'http://fiddle.jshell.net/gh/gist/response.json/2165866/'
    });

    var oneMoreAddressesPairsView = dojox.data.QueryReadStore({
        url: 'http://fiddle.jshell.net/gh/gist/response.json/2165866/'
    });
    
    var w = new dijit.form.FilteringSelect({
        name: 'source_address_id',
        required: true,
        store: customerAddressesPairsView,
        searchAttr: "name",
        style: "width: 40ex;"
    }, 'sourceAddress');

    var w1 = new dijit.form.FilteringSelect({
        name: 'source_address_id',
        required: true,
        store: anotherAddressesPairsView,
        searchAttr: "name",
        style: "width: 40ex;"
    }, 'sourceAddress1');

    var w2 = new dijit.form.FilteringSelect({
        name: 'source_address_id',
        required: true,
        store: oneMoreAddressesPairsView,
        searchAttr: "name",
        style: "width: 40ex;"
    }, 'sourceAddress2');

    var handle = w.watch('value', function(property, oldValue, newValue) {
        console.log('Watch fired.', property, oldValue, newValue);
    });
    var handle1 = w1.watch('value', function(property, oldValue, newValue) {
        console.log('Watch fired.', property, oldValue, newValue);
    });
    var handle2 = w2.watch('value', function(property, oldValue, newValue) {
        console.log('Watch fired.', property, oldValue, newValue);
    });

    customerAddressesPairsView.fetchItemByIdentity({
        identity: value            
        , onItem: function() {
            w.set("value", value);
            console.debug('Value should now be...