1

我正在尝试混合使用 Jquery Ui Autocomplete 组合框和重音折叠示例,但这似乎超出了我的技能范围。我试图在组合框示例中用“normalize(text)”替换对“text”的提及,但没有雪茄。

组合框示例:http: //jqueryui.com/demos/autocomplete/#combobox

重音折叠示例:http: //jqueryui.com/demos/autocomplete/#folding

更新:

我发现了问题: REGEX 对象不区分大小写,但我的 normalize 函数不区分大小写。

现在我有一个较小的问题:代码提供了众所周知的文本突出显示功能,如下所示:

if (this.value && (!request.term || matcher.test(normal) || matcher.test(text))) {
  return {
    label: text.replace(
    new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + $.ui.autocomplete.escapeRegex(request.term) + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>"),
    value: text,
    option: this
  };
}

当用户键入重音文本时这很好,但如果输入没有重音则无法突出显示。有没有办法解决这个问题,这样即使用户没有重音输入,文本也会被高亮显示?

谢谢!

4

1 回答 1

-1

我找到了一些解决方案:

if(this.value && ( !request.term || matcher.test(normalize(text)) || matcher.test(text)))
于 2014-03-26T14:05:24.023 回答