3

我有一个建议框,其中包含 2 种类型的建议。可以说建议类型A和建议类型B

我希望能够将显示的建议拆分为建议中的 2 个子列表,以便将所有A类型建议分组在一起,并将所有B类型建议单独分组。

我没有看到任何东西SuggestBoxSuggestOracle允许我这样做?看来是应该支持的东西。

任何帮助都会很棒。谢谢!

4

3 回答 3

3

这是我的快速建议,它未经测试,但也许它会让你走上正确的轨道:

  1. 创建自己的SuggestOracle,最好扩展MultiWordSuggestOracle
  2. 确保覆盖isDisplayStringHTML以返回 true(但在将值注入为 HTML - XSS 等时要注意常见的威胁)
  3. 添加一个新add方法来接受上一个建议,对其进行修改,使其包含一些 HTML/CSS 代码,这些代码将呈现上一组建议的结尾。

一些伪代码:

MyOracle oracle = new MyOracle();
oracle.add(suggestion1); // Group A
oracle.add(suggestion2);
oracle.newSuggestionGroup(); // insert, for example, <hr /> to the previous suggestion string, in this case suggestion2 - make sure to parse it away afterwards
oracle.add(suggestion3); // Group B
于 2013-01-21T14:44:52.963 回答
3

SuggestBox建议的默认显示是 a MenuBarin a PopupPanel,但您可以提供自己的显示,将As 和Bs 分开并将它们显示在两个列表中,或者您希望显示它们。

于 2013-01-21T14:56:50.783 回答
2

您最好的选择是使用基于 GWTQuery 构建的第三方库 - http://jdramaix.github.com/gwtchosen/

您也可以尝试在 GWT 中修改 SuggestBox 或 ListBox,但它们无法像在 GwtChosen 中那样提升到漂亮的 gui 级别。

于 2013-01-21T14:43:27.683 回答