我的输入是一个包含Windows文件路径的json。我想以html显示文件路径。请注意,我无法更改输入字符串。有人知道我可以对输入字符串执行什么操作,以便反斜杠显示在html页面中吗?我已经搜索了很多问题,但是似乎没有找到解决该问题的方法。
// The json would be something like this.
data = [
{"name": "Something", "link": "C:\something\something"},
{"name": "Something Else", "link": "C:\something\something_else"}
];
// Loop over the json and add the elements to the html afterwards
var list = '';
$.each(data, function () {
list += `
<p> ${this.name} </p>
<input class="form-control" type="text" value="${this.link}">
`;
});
$(".some-container").html(list);
使用此代码时,不会显示反斜杠。
答案 0 :(得分:2)
通过加倍转义转义符。
// The json would be something like this.
data = [
{"name": "Something", "link": "C:\\something\\something"},
{"name": "Something Else", "link": "C:\\something\\something_else"}
];
// Loop over the json and add the elements to the html afterwards
var list = '';
$.each(data, function () {
list += `
<p> ${this.name} </p>
<input class="form-control" type="text" value="${this.link}">
`;
});
$(".some-container").html(list);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="some-container"></div>
如果您无法更改代码,则没有解决方案。解析字符串文字时,转义序列将被替换,无法恢复原始源。
转义序列仅在源代码中以字符串文字形式处理。如果您是从用户输入或API获取链接的,则完全不必担心这一点。