私のオプション値が約250文字を超えるselectフィールドがあります。そのため、ユーザーは選択ボックスの値を読み取ることができません。Dojo FilteringSelectで水平スクロールを使用する方法
選択を水平スクロールとして行う方法はありますか、テキストをラップすることはできますか。
私のオプション値が約250文字を超えるselectフィールドがあります。そのため、ユーザーは選択ボックスの値を読み取ることができません。Dojo FilteringSelectで水平スクロールを使用する方法
選択を水平スクロールとして行う方法はありますか、テキストをラップすることはできますか。
ここはMy Filter Selectであり、ドロップダウンのためのダミーペインとして機能するスパンノードです。
<span dojoAttachPoint="dumyPane" style="z-index: 1; position: absolute; float: none; margin-left: 20px; margin-top: 10px;">
<input type="text" dojoType="dijit.form.FilteringSelect" dojoAttachPoint="myDrop" size="50" style="width:400px;">
以下は、私のドロップダウンノードをダミーパネルに追加するためのコードスニペットです。
dojo.connect(myDrop, "openDropDown", this, function(val){
dojo.connect(myDrop.dropDown, "onClick", this, function(){
if(typeof myDrop.dropDown != "undefined" && myDrop.dropDown !=null){
myDrop.setDisplayedValue(event.srcElement.innerText);
}
});
if(typeof myDrop.dropDown != "undefined" && myDrop.dropDown !=null){
var ddNode = myDrop.dropDown.domNode;
dojo.style(ddNode,{overflowX: "scroll",overflowY: "scroll",width: "400px",height: "100px"});
dumyPane.appendChild(ddNode);
}
});
スタイル属性を持つボックスの幅を指定することができます。唯一の問題は、言葉全体を見ることができないことです。それはそれを切る。
<select size="1" name="blah" style="width:250px">
あなたの助言は、選択フィールドの文字数を制限することです。 250文字はかなり長いです。別の入力コントロールの使用を検討することもできます。
他のコメント者が指摘したように、ユーザーのためにUIを再考する必要があります。
ただし、これがあなたのコントロール外の場合は、CSS white-spaceプロパティが役立ちます。
私はおそらくUIを考え直すべきであるというコメント者に同意します。つまり、長いオプションがついている場合は、chosen javascript pluginを試すことができます。それは基本的に標的とされた選択要素をハイジャックし、それを選択要素のように機能するすばらしいdivのセットに置き換えます。しかし、あなたはあなたが好きだが、divのスタイルを設定することができます。
オプションのテキストは250文字...本当ですか? –
私はこの1つにも答えようとはしていません...あなたの選択ボックスが250文字を超える場合は、その選択ボックスに入れたいものを書き直してください。それを包み込む方法ではありません。 –
しかし、今真剣に。 '