I’ve been using a nice, elegant plugin called DropKick for my webapp http://jamielottering.github.com/DropKick/, and I seem to be having a slight issue with it and am not sure how to go about trying to fix it. I am trying to programmatically change the value of the select drop down menu. Below is a description of my issue, and a link to JSFiddle.
HTML:
<select id="start" class="timePreference">
<option value="Choose">Choose</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
jQuery:
$('.timePreference').dropkick();
$('#someDiv').click(function() {
$('#start').val("1");
alert($('#start').val());
);
When I show the value in alert, it shows as one, however when I look at the labels on the option it stays at the default or whatever it was prior to the change.
For example, if my default was “Choose” and I click someDiv, then alert will show “1”, so it changing, but the select dropdown will still show “Choose”. Any suggestions. I may just be missing something small, not sure.
FSFiddle: http://jsfiddle.net/kdp8791/aNS9R/61/
working demo : With Commnet http://jsfiddle.net/aNS9R/218/ && without comments only 7 lines needed: http://jsfiddle.net/aNS9R/220/
-phew-
So, to start with I tried Change event [of dropkick] with in drop kick but its only for the change event within select and not from external element binding. i.e. in your case change button.
So; this is what I have done:
Explanation (if you interested)
I used firebug to inspect the variable and found that dropkick marshal your existing select with nice styling now when you used
$('#timePreference option:selected').val("1");dropkick actually did changed the selected value with in your element with id=timePreference but the div and ul and li stylingwhich is created by dropkick is not changed yet.For the chosen span it has a class
.dk_labeland for the current (green color) is given by.dk_option_currentclass.Please Note I pretty much read the plugin and figure out what is happening from here: https://github.com/JamieLottering/DropKick/blob/master/jquery.dropkick-1.0.0.js
If you wish to use firebug and see how elements are se use this link : http://jsfiddle.net/aNS9R/218/show/ and play around with your inspect mode, you will see dropkick styling and how it works.
JQuery code
Hope this helps you mate, cheers!
HTML