не может установить значение элемента управления SELECT при использовании jquery.selectbox - PullRequest
0 голосов
/ 02 марта 2012

При использовании плагина jquery.selectbox.js для создания хорошо выглядящих выпадающих списков SELECT я столкнулся с проблемой, что не могу выбрать текущее значение с помощью JQuery: $ ("# select_id"). Val ("мое значение");

Вероятное решение - удалить $ ('# select_id'). Selectbox ();звоните, но я теряю дизайн.

Что делать?

Расследование:

При использовании jquery.selectbox настоящий раскрывающийся список скрыт настраница и видны только ее элементы представления, сделанные jquery.selectbox (на самом деле это DIV).Проблема в том, что при обновлении .val () соответствующий видимый DIV (с class = "jquery-selectbox-currentItem") не обновляется.

Ответы [ 4 ]

3 голосов
/ 26 апреля 2013

Не оптимальное решение, но более чистое, чем предложенный вами обходной путь, попробуйте это (в основном, заставьте selectBox обновить свой HTML):

$("#order_billing_region").val("your value").selectBox("options", $("#order_billing_region").html());
0 голосов
/ 01 сентября 2014

Я нашел следующее: https://github.com/marcj/jquery-selectBox/blob/master/readme.md

Код: $ ('select'). selectBox ('value', 1);

0 голосов
/ 05 февраля 2014

Я нашел обходной путь таким образом, мы можем отсоединить selectbox, затем установить значение и снова подключить плагин selectbox к выпадающему меню.

function fnClearJquerySelectBox(control,value)
{
   $("#order_billing_region").selectbox("detach");
   $("#order_billing_region").val(value);
   $("#order_billing_region").selectbox("attach");
}

fnClearJquerySelectBox("control","0");

Надеюсь, это поможет ..

0 голосов
/ 05 марта 2012

Я изобрел обходной путь:

var ctlName = "#order_billing_region";
var ctl = $(ctlName);
ctl.val("my value");
//A workaround for buggy jquery.selectbox
ctl.siblings(".jquery-selectbox-currentItem").html($(ctlName + " option:selected").html());
...