javascript - 我需要 Awesomplete 来保留尾随空格
问题描述
我已经使用 Awesomplete(一个非常好的自动完成小部件)大约两年了。它运行良好,但默认情况下显然会修剪尾随空格。我一直在忍受这个,但我真的需要保留尾随空格。
包含所需尾随空格的列表由数据库生成;CSS 已应用于网页的输入字段以保留尾随空格 - 但是空格仍然被修剪,所以我认为 Awesomplete 正在这样做。
我对 Javascript 知之甚少,但我猜测相关代码包含在以下内容中:
_.all = [];
_.FILTER_CONTAINS = function (text, input) {
return RegExp($.regExpEscape(input.trim()), "i").test(text);
};
_.FILTER_STARTSWITH = function (text, input) {
return RegExp("^" + $.regExpEscape(input.trim()), "i").test(text);
};
_.ITEM = function (text, input, item_id) {
var html = input.trim() === "" ? text : text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "$&");
return $.create("li", {
innerHTML: html,
"aria-selected": "false",
"id": "awesomplete_list_" + this.count + "_item_" + item_id
});
};
_.REPLACE = function (text) {
this.input.value = text.value;
};
_.DATA = function (item/*, input*/) { return item; };
如何修改它以保留尾随空格?
谢谢!
PS我没有写上面引用的代码;它是 Awesomplete 的 JavaScript 的摘录,包含我认为是他们代码的相关部分。如果实际上没有任何东西可以修剪尾随空格,请告诉我!谢谢。
PS #2 它不是带有“显示”和“值”的下拉框。它是一个文本输入字段,通过从列表中提取值来自动完成用户键入的内容。谢谢。
解决方案
input.trim()
是修剪空白的原因,看起来他们经常这样做。但是,这看起来主要用于显示用途。您可能想尝试查看是否可以使用带有空格的值作为选项“值”并允许修剪显示文本。
推荐阅读
- python - 两个时间序列的并集
- pandas - 如何删除时间戳中的 freq='W-FRI' 部分
- keras - Word2Vec 二次采样——实现
- c# - 如何使用 C# 添加/修改注册表项?
- javascript - 将 ASP.NET MVC IEnumerable 视图模型转换为对象的 json 数组
- python - 根据另一个数组中的值展开一个 numpy 数组
- typescript - 在 Typescript 中:有没有办法内联初始化对象或数组(具有某种接口类型)?
- netlogo - 如何选择与邻居共享的对象
- java - Android Studio 按钮导致崩溃
- python - python训练和测试中的错误:如何修复“TypeError:unhashable type:'list'”