2012-12-18 55 views
0

我的代碼適用於文本框中的單行輸入。例如:name:adam使用javascript將多個數據從文本框抓取到文本框中

但我想要的是,當我將數據輸入到文本框時抓住名稱和類。事情是這樣的:

例子:

name:adam 
class:8th grade 

<script> 
function myFunction() 
{ 
    var x = document.getElementById("tarea"); 
    document.getElementById("name").value = x.value.substring(5); 
} 
</script> 

而在HTML部分,我有這樣的:

<textarea rows="4" cols="50" id="tarea" onblur="myFunction()"></textarea> 


name: <input type="text" id="name"></br> 
class: <input type="text" id="class"> 

回答

1

你應該分裂根據新行的文本區域。像

function myFunction() 
{ 

var x = document.getElementById("tarea"), 
    nameInput = document.getElementById('name'), 
    classInput = document.getElementById('class'); 

var lines = x.value.split('\n'); 
var name = lines[0].substring(5); 
var grade = lines[1].substring(6); 

nameInput.value = name; 
classInput.value = grade; 

} 

小提琴:http://jsfiddle.net/MVWAD/

+0

我用你的方法在這裏的http:/ /jsfiddle.net/irfan/c2LRj/但沒有得到所需的結果。請告訴我我哪裏錯了。 –

+0

嘿抱歉,我沒有做整個事情只是選擇你需要的數據。用工作小提琴和額外的代碼 – Evan

+0

感謝我的答案udpating我的答案。有效 –

0

假設名稱是始終在文本框中的第一線和一流的永遠是第二:

function myFunction(){ 
    var x=document.getElementById("tarea").value; 
    var values = x.split("\n"); 
    document.getElementById('name').value = values[0].substr(5,values[0].length); 
    document.getElementById('class').value = values[1].substr(6,values[1].length); 
} 
相關問題