2015-07-12 21 views
0

zk中的Lisbox默认回答击键,如向上和向下翻页,向上和向下键以及主键和结束键。例如:当用户点击箭头时,我希望当前选中的行下降。我在ctrlKeys属性中给出了以上所有键,以便在特定键被击中时调用后端bean。但它并不要求以上的关键。它调用后端bean来获取像“delete”这样的键。我想为zk中的listbox禁用上述键的默认行为。请帮助我。这是ctrlKeys属性我放弃,禁用列表框在zk中作出响应的击键的默认行为

ctrlKeys="#home#end#del#up#down#pgup#pgdn" 

onCtrlKey="@command('answerKeyStroke',keyCode=event.getKeyCode(), id=0)" 

回答

0

也许你应该看看this question.

从这个问题的答案,这是解决方案(只是这是一个列表框代替组合框)

<zk xmlns:w="client"> 
    <combobox> 
     <attribute w:name="_doKeyDown"><![CDATA[ 
      function (evt) { 
       var keyCode = evt.keyCode; 
       if (keyCode != 38 && keyCode != 40) { 
        this.$_doKeyDown(evt); 
       } 
      } 
     ]]></attribute> 
     <comboitem label="item one" /> 
     <comboitem label="item two" /> 
     <comboitem label="item three" /> 
    </combobox> 
</zk> 
+0

就像魅力:) – User1230321