给定输入字段,例如<input data-bind="value: myText">
使用视图模型self.myText = ko.observable('\t')
。如何获取显示\ t而不是选项卡的输入?
文本字段用于决定文件中的分隔符应该是什么样子。如果该字段仅显示选项卡,则用户可能不知道已存在现有值。
如果您在文本字段中键入\ t,则会保存正确的值&#39; \ t&#39;。检索时,它将再次显示标签
我知道当我将默认值设置为&#39; \ \ t&#39;但我不想逃避它,因为我无法确定用户输入是否已转义/未转义,这很可能会导致错误
答案 0 :(得分:2)
您可以使用JSON.stringify
以字符串文字形式获取包含的任何内容。
然后你可以从输出中删除外引号(你可能想要创建一个计算变量,并在你的计算函数内部有myText
observable作为依赖项,然后每当用户使用任何escape characters
它就完成工作
实施例:https://jsfiddle.net/rnhkv840/24/
str = "\t";
self.myText = ko.observable(JSON.stringify(str).replace(/\"/g, ""))