gpt4 book ai didi

javascript - 为什么 '\n' 无法与 ServiceNow 脚本一起使用?未创建新线路

转载 作者:行者123 更新时间:2023-12-03 00:18:49 25 4
gpt4 key购买 nike

我们尝试了'\n'的几种变体,并尝试了'\r',但脚本不断返回行在一起或之间有空格,而不是实际的新线路。这是底部两个问题的脚本:

(function(current, previous, gs, action) {
var eqStr ='cmdb_ci=' + current.getValue('cmdb_ci');

//eqStr='short_description=' + current.getValue('short_description');
//eqStr += '^description=' + current.getValue('description');

eqStr +='^priority=' + current.getValue('priority');
eqStr +='^sys_domain=' + current.getValue('sys_domain');
eqStr +='^company=' + current.getValue('company');
eqStr +='^justification=' + current.getValue('number')
+ '\n' + current.getValue('short_description')
+ '\n' + current.getValue('description') ;

最佳答案

如果您正在构建的字符串最终将被注入(inject)到 DOM 元素中,则必须使用负责解析 DOM 元素的 HTML 解析器熟悉的代码。 HTML 解析器不知道 JavaScript 字符串转义码,如下所示:

let output = "This is\na test.";
document.querySelector("div").innerHTML = output;

let output2 = "This is\nanother test.";
document.querySelector("p").textContent = output2;
<div></div>
<p></p>

对于将成为 DOM 元素一部分的字符串,您需要使用创建换行符的 HTML 标记,<br> :

let output = "This is<br>a test.";
// innerHTML invokes the parser to parse the supplied string:
document.querySelector("div").innerHTML = output;

let output2 = "This is<br>another test.";
// This won't produce the line break because textContent doesn't invoke the HTML
// parser. Insted, the actual text will be placed in the string.
document.querySelector("p").textContent = output2;
<div></div>
<p></p>

关于javascript - 为什么 '\n' 无法与 ServiceNow 脚本一起使用?未创建新线路,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54411085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com