내 옵션 값이 약 250자를 초과하는 선택 필드가 있는데, 그 이유는 사용자가 선택 상자에서 값을 읽을 수없는 이유입니다.Dojo FilteringSelect에서 가로 스크롤을 사용하는 방법
선택 항목을 가로 스크롤로 만들거나 텍스트를 줄 바꿈 할 수 있습니까?
내 옵션 값이 약 250자를 초과하는 선택 필드가 있는데, 그 이유는 사용자가 선택 상자에서 값을 읽을 수없는 이유입니다.Dojo FilteringSelect에서 가로 스크롤을 사용하는 방법
선택 항목을 가로 스크롤로 만들거나 텍스트를 줄 바꿈 할 수 있습니까?
여기 내 필터 선택 및 드롭 다운을위한 반투명 창 역할을하는 스팬 노드입니다.
<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을 사용해보십시오. 기본적으로 타겟 요소를 하이재킹 (hijack)하여 선택된 요소처럼 행동하는 멋진 div 세트로 대체합니다. 하지만, 당신이 원하는대로 div 스타일을 지정할 수 있습니다.
옵션 텍스트의 글자 수는 ... 정말입니까? –
나는이 하나에 대답하려하지 않고있다 ... 당신의 선택 상자가 250자를 넘는다면, 그 선택 상자에 넣고 싶은 것을 재고해야한다. 포장하는 방법이 아닌 ... –
하지만 지금은 심각하게. '