简体   繁体   中英

How to change rendered selected option in select box with jquery

I have tried many ways to select an option with jquery including .val("0") .attr('selected', 'selected') and .attr('selected', 'true') and the TexoTela plugin . They all seem to update the html but the browser still shows the last item selected by the user.

Try out this fiddle ... Select the dropdown value 1 and then click the link.

Is there any way to actually update the displayed value?

You mean change which item is selected?

$('select').val('0');

There are other ways, but this is the basic, following your example.

jsfiddle

You can read up on the documenation for .val() here , and the snippet:

checks, or selects, all the radio buttons, checkboxes, and select options that match the set of values.

EDIT for jQuery Mobile

For jQuery Mobile you also need to refresh the select as mentioned in the mobile docs :

If you manipulate a select via JavaScript, you must call the refresh method on it to update the visual styling.

You can do this by:

$('select').selectmenu("refresh",true);

Still use your .val("0") to set the value, and to update in the browser you have to use one of the following:

.trigger("liszt:updated");

or

.trigger("chosen:updated");

Just one will work, depending on how you create your select.

It's gonna be like:

$("#Your_select").val('0');
$("#Your_select").trigger("liszt:updated");

You're setting the option value to zero.

Set the select not the option val

$('select').val('0');

and you'll probably want to use an #id instead just a 'select' selector.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM