[英]Javascript - break in textarea but not in paragraph
我有个问题:
我有一个QR码扫描仪,可以获取VCard。 我返回以下字符串: BEGIN:VCARD版本:2.1 FN:John Doe N:doe; john END:VCARD
问题如下:当将此信息(通过Javascript)放入文本区域或仅将其转储到警报窗口时,信息之间会出现中断,如下所示:
开始:VCARD
版本:2.1
FN:约翰·杜
。
。
。
但是,当将此信息放入段落( <p></p>
)中时,它没有间断,只是一个纯字符串。
现在的问题是,我是否也可以将这些分隔符放入段落中,或者可以在属性之间插入另一个符号或其他符号?
我考虑过只将字符串拆分为空格,但是它不起作用,因为例如FN
本身包含空格,例如...
谢谢你的帮助。
编辑:不幸的是,所有3条建议均无效。
我现在所拥有的是:
function writeqrcodecontent(){
var textfeld = document.getElementById("inhaltvonqrcode");
var wert = $.scriptcam.getBarCode();
//wert.split('\n').join('<br/>');
//wert.replace("\n", "<br>");
//wert.replace(/\n/g,'<br>');
textfeld.innerHTML = wert;
textfeld.style.display="block";
}
但是如前所述,所有三行注释掉的行都不起作用,所有内容仍显示在一行中。
该段定义为:
<p id="inhaltvonqrcode" style="display:none; clear:both;"></p
我了解您的想法,但不明白为什么它不起作用...
顺便说一句,我还尝试了类似wert.split('\\n').join('#');
看看,是真的要中断还是不能正常工作,但这还不能正常工作,因此文本似乎没有\\n
。
编辑2
现在正在工作,我希望一步一步完成两个步骤,所以不
var wert = $.scriptcam.getBarCode();
wert.split('\n').join('<br/>');
但
var wert = ($.scriptcam.getBarCode()).split('\n').join('<br/>');
谢谢你的帮助!
您返回的字符串可能包含换行符\\n
。 要使它们在HTML中完整显示换行符,您可以在HTML中包装用<pre></pre>
返回的所有内容。 或在换行符\\n
上拆分并用<br />
替换。
text.split('\n').join('<br />')
text.replace(/\\n/g,'<br>');
该行将全部替换为<br />
您的条形码读取器正在使用\\ n换行符读取vCard,但是将忽略此换行符的纯html。
在Javascript中,您可以只使用类似
someText.replace("\n", "<br>");
它会做您想要的。 在php中,其nl2br函数
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.