title: Call function with reference to current model item on select change in Knockout.js
body: <p>I'm having difficulties handling select change the same way the build in 'click' handler on a span/button/whatever does in Knockout. Easy scenario, when the currently selected item changes, I want to call a function with a reference to the respective item in a foreach:</p>
  
  <pre><code>&lt;ul id="storeList" data-bind="foreach: $data"&gt;
  &lt;li&gt;
  &lt;span data-bind="text: StaticName, click: $root.storeModel.editStore"&gt;&lt;/span&gt;
  &lt;/li&gt;
  &lt;/ul&gt;
  </code></pre>
  
  <p>In editStore, store is a reference to the complete current store object:</p>
  
  <pre><code>p.editStore = function(store, event) {
              location.hash = 'Butiker/Edit/' + ko.utils.unwrapObservable(store.StoreId);
              var el = event.target;
  
              p.currentEditItem(store);
              p.currentEditElement(el);
          }
  </code></pre>
  
  <p>Now I want to use a select instead:</p>
  
  <pre><code>&lt;select data-bind="options: $data, optionsText: 'StaticName', optionsValue: 'StoreId', optionsCaption: 'Choose store', event : { change: $root.storeModel.editStore }"&gt;&lt;/select&gt;
  </code></pre>
  
  <p>This works but in the editStore function, nothing is passed as the first parameter.</p>
  
  <p>I can do value: currentEditItem on the select, but I want to do extra stuff when that observable has its data updated. I can't subscribe to it, because that only gives me the new string value of that particular property...not the object itself.</p>
  
  <p>Why does click have to give me everything I need, whereas select change leaves me dealing with a small portion of the object I'm interested in?</p>