Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript为每行文本添加前缀/后缀?_Javascript - Fatal编程技术网

如何使用javascript为每行文本添加前缀/后缀?

如何使用javascript为每行文本添加前缀/后缀?,javascript,Javascript,如何将每行的前缀添加到文本区域。。例如: 这是文本区域的内容: 你好124 我想在每一行中添加[b]前缀和后缀,这样当我单击一个按钮时,结果将是: [b] 你好[/b] [b] 124[/b] 请帮助我:(仅使用普通Javascript,您可以执行以下操作: var textArea = document.getElementById("yourTextAreaID"); var lines = textArea.value.split("\n"); for (var i = 0; i &l

如何将每行的前缀添加到文本区域。。例如:

这是文本区域的内容:

你好
124


我想在每一行中添加[b]前缀和后缀,这样当我单击一个按钮时,结果将是:



[b] 你好[/b]
[b] 124[/b]



请帮助我:(

仅使用普通Javascript,您可以执行以下操作:

var textArea = document.getElementById("yourTextAreaID");
var lines = textArea.value.split("\n");
for (var i = 0; i < lines.length; ++i) {
    lines[i] = "[b]" + lines[i] + "[/b]";
}
textArea.value = lines.join("\n");

函数TextDefine(val){
var i=0;
var array1=val.value.split(“\n”);
对于(i=0;i
例如:


使用联接和拆分:

var prefix = '[b]', suffix = '[/b]',
   txt = document.getElementById('myText');
txt.value = prefix + txt.value.split('\n').join(suffix + '\n' + prefix) + suffix;

具有讽刺意味的是,答案框就是答案……感谢这一点,但是我如何在另一个框中显示结果呢?函数TextDefine(val){var i=0;var array1=val.value.split(“\n”);for(i=0;i\n而不考虑操作系统?而不是
\r\n
?@Ralph,根据我的经验,在客户端代码中使用
\n
分隔符在所有浏览器中都有效。但是,当发布到服务器时,换行符会被转换为“\r\n”。使用
textArea.value='[b]'+行。join([/b]\n[b]')+[/b]“;
可以更好地工作,避免循环。编辑:正如他回答中使用的第9框。我把你的第二个答案放在一个标签中,但它不起作用:(我怎么做?没有必要创建一个捕获组:
。替换(/。++/g,“[b]$&[[b]”)
。我试图把你的答案放在标签中,但它不起作用,对不起,我是个noob
<script language="javascript" type="text/javascript">
function TextDefine(val){
var i= 0;                

var array1 = val.value.split("\n");
for ( i = 0; i < array1.length; i++) {
    array1[i] = "[b]" + array1[i] + "[/b]";
}
val.value = array1.join("\n");

}
</script>

<textarea name="data" id="data"></textarea>
<input type="button" name="submit1" value="Submit" onclick="TextDefine(document.getElementById('data'))" />
text = document.getElementById("the_textarea").value;
document.getElementById("the_textarea").value = text.replace(/.+/g, "[b]$&[/b]");
var prefix = '[b]', suffix = '[/b]',
   txt = document.getElementById('myText');
txt.value = prefix + txt.value.split('\n').join(suffix + '\n' + prefix) + suffix;