
我问了repo的问题,但没有得到答案。https://github.com/Pixabay/jQuery-autoComplete/issues/65
报价列在下拉列表中。但当被选中时,我会遇到引用的问题(如gif中所示)。我甚至不知道它是如何添加到代码中的文本输入中的。我在JS还不够强。
我不能证明在这里粘贴脚本中的所有代码是合理的。我希望有人能快速地看一看repo,并为我指明正确的方向。
这是对其初始字符串进行转义的地方
renderItem: function (item, search){
// escape special characters
search = search.replace(/[$-\/?[-^{|}]/g, '\\$&');
var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi");
return '<div class="autocomplete-suggestion" data-val="' + item + '">' + item.replace(re, "<b>$1</b>") + '</div>';
},我不知道它是从那里开始的,它是如何添加到文本输入中的?怎样才能让它再次逃脱。
我知道我问得太多了,我花了一天的时间试图弄清楚,但我明天会再回来的。希望有人能抽出5分钟的时间来看看,帮助这个痛苦的新手。
谢谢。
发布于 2016-09-02 12:57:46
我自己修好了,我敢肯定是马马虎虎。
return '<div class="autocomplete-suggestion" data-val="' + item.replace("\"", """).replace("'", "'") + '">' + item.replace(re, "<b>$1</b>") + '</div>';发布于 2016-09-01 13:52:13
如果您使用的是jQuery,可以使用此函数:
$(selector).text(notEscapedText)
在您的案例中:
renderItem: function (item, search){
return $('<div class="autocomplete-suggestion" data-val="' + item + '">').text(search);
},或者:
renderItem: function (item, search){
var $value = $('<b>').text(search);
return $('<div>')
.addClass('autocomplete-suggestion')
.data('val', item)
.append($value);
},https://stackoverflow.com/questions/39263461
复制相似问题