我正在使用jQuery自动完成,其中多个输入框互连,即当在第一个输入框中插入一些值并失去焦点时,以下输入框会受到影响(即相应地过滤值)。然后我可以聚焦和另一个输入框并开始键入一些值,以便我应用两个过滤器(键入值并根据以前的输入框值)。
此外,我在删除输入框中的所有字符时设置了清除所有输入框的事件:
if (inputBoxTrigger.val().length == 0 && (event.keyCode == BACKSPACE || event.keyCode == DELETE)) {
jQuery.each(inputObjectArray, function (i, obj) {
obj.val("");
});
}
所以,当我刚删除当前输入框中的最后一个字符时,我清理了所有内容。但是,我可以做以下事情: 1)选择输入框的内容(例如通过鼠标或保持班次) 2)开始在此输入框中键入内容而不按退格键或删除按钮
在这种情况下,输入框被清除并插入一个新字符,但我没有发现这种情况。 我试图放弃对退格/删除按钮keyCode的检查,但是不起作用:当离开输入框时,新输入框为空,所以我只清理所有内容(包括以前的输入框)。
有什么想法吗?
答案 0 :(得分:0)
可能是一种更复杂的算法来检测字符串相似性?
如果字符串非常相似,那么它可能是一个简单的修正,如果没有那么它可能是一个完全不同的项目,你可以重置表格。您还可以将长度/方向比较与相似性比较进行链接以对其进行微调(即仅在从长字符串转到另一个长字符串时进行相似性比较,...)。
关于字符串相似性:
Compare Strings Javascript Return %of Likely