2016-09-15 64 views
1

我想产生一些表,这个想法是,我想这个文本复制到我的所谓第一的textarea:文本,如何在第二个texarea中获得所需的输出?

33345677 RM GW 
456575 FAC GOG 

以产生称为第二textarea的以下的输出:OUT1

"RBD|facebook|W|google|C|33345677~W~RM GW" "dasd.wbs" 
    "RBD|facebook|I|google|C|33345677~E~RM GW" "dasd.wbs" 
    "RBD|facebook|O|google|C|33345677~R~RM GW" "dasd.wbs" 
    "RBD|facebook|W|google|C|456575~W~FAC GOG" "dasd.wbs" 
    "RBD|facebook|I|google|C|456575~E~FAC GOG" "dasd.wbs" 
    "RBD|facebook|O|google|C|456575~R~FAC GOG" "dasd.wbs" 

我需要产生每所述第一文本区域的第3页的表,该规则是,我有两个参数和拳头空白空间限定第一参数的端部, 两个文本域的代码如下:

<textarea cols="70" rows="15" id="text" ></textarea> 
<div cols="70" rows="15" id="out1" ></div> 

我想产生使用一个BUTTOM我建立所谓的表:表生成,

<div class="wrapper"> 
<button class="button buttom0" style="vertical-align:middle;background-color:Green" onclick="generateTables()"; ><span>Generate Tables</span></button> 
using the function called: generateTables, 
function generateTables() { 
var newText = document.getElementById("text").value; 
document.getElementById("out1").innerHTML = newText; 
} 

的问题是,我不知道如何进行所需的第二textarea的显示输出以上,因为我是网络编程的初学者,我用bash做模板,我真的很感谢任何建议,以克服这种情况我写了下面的jsfiddle更清晰https://jsfiddle.net/ncve6g1d/

我认为也许是一个好主意,定义一个模板,然后进行替换如下:

"RBD|facebook|W|google|C|[FIRSTPARAMETER]~W~[SECONDPARAMETER]" "dasd.wbs" 
"RBD|facebook|I|google|C|[FIRSTPARAMETER]~E~[SECONDPARAMETER]" "dasd.wbs" 
"RBD|facebook|O|google|C|[FIRSTPARAMETER]~R~[SECONDPARAMETER]" "dasd.wbs" 

更换的第一个参数,第二个,

回答

1

你可以用正则表达式为应用.replace()

var generate = document.getElementById('generate'); 
 
var input = document.getElementById('input'); 
 
var output = document.getElementById('output'); 
 

 
generate.onclick = function() { 
 
    var text = input.value; 
 
    text = text.replace(/(\S+)\s+(.*)/g, 
 
     '"RBD|facebook|W|google|C|$1~W~$2" "dasd.wbs"\n' + 
 
     '"RBD|facebook|I|google|C|$1~E~$2" "dasd.wbs"\n' + 
 
     '"RBD|facebook|O|google|C|$1~R~$2" "dasd.wbs"'); 
 
    output.textContent = text; 
 
};
<textarea id="input" style="width:100%">33345677 RM GW 
 
456575 FAC GOG</textarea><br> 
 
<button id="generate">Generate table</button><br> 
 
<div id="output" style="width:100%; white-space:pre"></div>

+0

这是真的好,我得到了期望的输出,非常感谢这种方法,让我等一等,如果有其他的方法。 – neo33

+0

还有一个问题,我得到的表,但我得到三行,而不是六,有办法让所有的表与相应的换行符? – neo33

+0

您是否运行了该代码段?它产生6行,而不是3。 – trincot