如何使用javascript更改文本区域中的布局打印?
大家好,在我的代码中,我创建了一个带有随机数的数组。 我在文本区域打印此数组,并精确显示如下:如何使用javascript更改文本区域中的布局打印?,javascript,arrays,layout,textarea,Javascript,Arrays,Layout,Textarea,大家好,在我的代码中,我创建了一个带有随机数的数组。 我在文本区域打印此数组,并精确显示如下: 5,52,5,4,8,4,3,4,8,6,1,4,58,3,4,8,3,1,8 现在我要确保更改文本区域中数字的打印。我希望从垂直方向看到它们,特别是: 5 52 5 4 8 4 3 4 8 6 1 4 58 3 4 8 3 1 8 当用户选择单选按钮时,必须更改布局 事实上,我有: radio buttons horizontally radio but
5,52,5,4,8,4,3,4,8,6,1,4,58,3,4,8,3,1,8
现在我要确保更改文本区域中数字的打印。我希望从垂直方向看到它们,特别是:
5
52
5
4
8
4
3
4
8
6
1
4
58
3
4
8
3
1
8
当用户选择单选按钮时,必须更改布局
事实上,我有:
radio buttons horizontally
radio buttons vertically
谁知道启发我?编辑:
使用非jquery重写。允许在文本字段中输入一些基本文本
JSFiddle:
<input id="radio1" type="radio" name="hv" value="horizontal" checked/>Horizontal
<br/><input id="radio2" type="radio" name="hv" value="vertical"/>Veritical
<br/>
<textarea id="text">Some text, random stuff.
Other text.
</textarea>
function toggleNumbers(){
if(this.value == 'horizontal'){
document.getElementById('text').value = document.getElementById('text').value.replace(/(\d)\n?/g,"$1,").replace(/(\d),(\D)/g,"$1 $2").replace(/(\d),$/g,"$1");
} else {
document.getElementById('text').value = document.getElementById('text').value.replace(/(\d),?/g,"$1\n");
}
}
document.getElementById('radio1').addEventListener('click',toggleNumbers);
document.getElementById('radio2').addEventListener('click',toggleNumbers);
var arr = [1,2,3,4,5,6,7,8];
document.getElementById('text').value = document.getElementById('text').value + arr.join(",");
HTML:
<input id="radio1" type="radio" name="hv" value="horizontal" checked/>Horizontal
<br/><input id="radio2" type="radio" name="hv" value="vertical"/>Veritical
<br/>
<textarea id="text">Some text, random stuff.
Other text.
</textarea>
function toggleNumbers(){
if(this.value == 'horizontal'){
document.getElementById('text').value = document.getElementById('text').value.replace(/(\d)\n?/g,"$1,").replace(/(\d),(\D)/g,"$1 $2").replace(/(\d),$/g,"$1");
} else {
document.getElementById('text').value = document.getElementById('text').value.replace(/(\d),?/g,"$1\n");
}
}
document.getElementById('radio1').addEventListener('click',toggleNumbers);
document.getElementById('radio2').addEventListener('click',toggleNumbers);
var arr = [1,2,3,4,5,6,7,8];
document.getElementById('text').value = document.getElementById('text').value + arr.join(",");
CSS
textarea {
height:200px;
width:300px;
}
HTML
<textarea id="ta">5,52,5,4,8,4,3,4,8,6,1,4,58,3,4,8,3,1,8</textarea>
<input type="radio" name="orientation" value="vertical"/> Vertical
<input type="radio" name="orientation" value="horizontal"/> Horizontal
5,52,5,4,8,4,3,4,8,6,1,4,58,3,4,8,3,1,8
垂直的
水平的
Javascript
var numbers = document.getElementById("ta").value.split(",");
var inputs = document.getElementsByTagName("input");
for(var i = 0; i < inputs.length; i++){
inputs[i].onclick=function(){
document.getElementById("ta").value = (this.value == "vertical") ? numbers.join("\n"):numbers.join(",");
}
}
var numbers=document.getElementById(“ta”).value.split(“,”);
var inputs=document.getElementsByTagName(“输入”);
对于(变量i=0;i
JS Fiddle:您是否编写了任何代码来尝试实现这一点,或者您只是希望我们为您完成您的工作?我没有使用JQuery。我将kevin的代码改为:[code]var numbers=document.getElementById(“Textarea”).innerHTML.split(“,”);var inputs=document.getElementsByTagName(“输入”);对于(var i=0;i