基本上我正在尝试创建类似Jquery输入令牌的东西。我将通过自动完成(自定义)将值添加到逗号分隔的字符串中,并且还希望提供删除选项。
我正面临着这个问题,任何形式的帮助都会非常感激。
答案 0 :(得分:7)
我不会为此使用以逗号分隔的字符串。我会使用一个数组,然后在必要时将转换为逗号分隔的字符串(通过join
)。
可是:
添加当然很容易(假设data
和newEntry
都是字符串):
data += "," + newEntry;
或者如果你想避免使用逗号:
data = data ? (data + "," + newEntry) : newEntry;
删除稍微具有挑战性,这也是我为什么不使用字符串的部分原因。但你可以这样做:
var tmp = data.split(',');
var index = tmp.indexOf(entryToRemove);
if (index !== -1) {
tmp.splice(index, 1);
data = tmp.join(',');
}
...使用数组中间件。或者您可以使用String#indexOf
找到该条目,然后使用String#substring
删除它之前和之后的位,并将它们放在一起。