2012-03-02 6 views
1

jquery.selectbox.jsプラグインを使用して素晴らしいSELECTドロップダウンを作成すると、JQueryを使用して現在の値を選択できないという問題が発生しました:$( "#select_id ").val(" my value ");jquery.selectboxを使用しているときにSELECTコントロールの値を設定できません

解決策は、$( '#select_id')を削除することです。コールが、私はデザインを失う。

どうすればよいですか?

調査:

本当のドロップダウンがページに隠されているとjquery.selectboxによって作られただけで、その体裁の要素が(実際、彼らはdiv要素です)表示されているjquery.selectbox使用。問題は、.val()が更新されたときに、対応する可視DIV(class = "jquery-selectbox-currentItem")が更新されないことです。

+0

なぜ人々はdownvoteですか?これらが実際に後で誰かを助けることができるような質問を理解することはとても難しいですか?この質問と解決のおかげで! –

答えて

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()); 
3

ない最適なソリューションが、あなたが提案した回避策は、この(基本的には、そのHTMLを更新するために、選択ボックスを強制)しようとしていることクリーナー:

$("#order_billing_region").val("your value").selectBox("options", $("#order_billing_region").html()); 
0

私はこの方法で回避策を見つけました。selectboxを切り離してから、値を設定して、selectboxプラグインをドロップダウンリストに再度貼り付けることができます。

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

fnClearJquerySelectBox("control","0"); 

・ホープ、このことができます。..

関連する問題