0

当使用 jquery.selectbox.js 插件制作漂亮的 SELECT 下拉菜单时,我遇到了一个问题,我无法使用 JQuery 选择当前值:$("#select_id").val("my value");

可能的解决方案是删除 $('#select_id').selectbox(); 打电话,但我失去了设计。

该怎么办?

调查:

使用 jquery.selectbox 时,真正的下拉菜单隐藏在页面上,只有 jquery.selectbox 制作的表示元素可见(实际上它们是 DIV)。问题是当 .val() 被更新时,相应的可见 DIV(带有 class="jquery-selectbox-currentItem")没有更新。

4

4 回答 4

3

不是最佳解决方案,而是您提出的解决方法更清洁,请尝试以下操作(基本上,强制 selectBox 更新其 html):

$("#order_billing_region").val("your value").selectBox("options", $("#order_billing_region").html());
于 2013-04-26T00:32:43.203 回答
0

I have found a workaround this way, we can detach the selectbox, then set value and attach the selectbox plugin to the dropdown again.

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

fnClearJquerySelectBox("control","0");

Hope this helps..

于 2014-02-05T13:51:04.160 回答
0

我发明了一种解决方法:

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());
于 2012-03-05T15:07:23.053 回答
0

我发现以下内容: https ://github.com/marcj/jquery-selectBox/blob/master/readme.md

代码:$('select').selectBox('value', 1);

于 2014-09-01T08:34:40.287 回答