2012-03-20 93 views
1

我有一個數組。其中我有2個名字。我想通過拆分功能只選擇姓氏,但它不起作用。我使用下劃線分隔了名字和姓氏。JavaScript中的拆分方法?

function spt(){ 
    var m= new Array('jitender_chand','shashi_cant') 

    var j= m.split('_'); 

    document.getElementById('add').innerHTML=j; 

    } 
<body> 
<input type="text" value="hii" id="jitender" /> 
<input type="button" onclick="spt()" /> 

<div id="add" ></div> 

回答

3

請查看以下code.Hope這可以幫助你:

HTML代碼:

<input type="text" value="hii" id="jitender" /> 
<input type="button" value="Click me to split" onclick="spt()" /> 
<div id="add" ></div> 

JS代碼:

function spt(){ 
    var m= new Array('jitender_chand','shashi_cant'); 
    for(var i=0;i<m.length;i++){ 
    var j= m[i].split('_')[1];  
    document.getElementById('add').innerHTML= 
     document.getElementById('add').innerHTML + "," + j; 
    } 
} 

工作演示:

http://jsfiddle.net/C8h9K/

3

應該是:


var m = new Array('jitender_chand','shashi_cant') 
var splitted = m[0].split("_")[1]; //for jitender_chand 
//and use m[1].split("_")[1]; //for other name 
alert(splitted); 
document.getElementById('add').innerHTML=splitted; 

或者如果你想在助教的陣列添加姓氏,則:


var m = new Array('jitender_chand','shashi_cant'); 
var surname = []; 
for(var s = 0; s < m.length; s++) { 
    surname.push(m[s].split("_")[1]); 
} 
console.log(surname); 
//if you want to join surnames, then 
var joinedSurnames = surname.join(","); 

希望它可以幫助

+0

這個。 'split'是String類的一個方法,而不是'Array'類。 (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split瞭解更多信息) – djlumley 2012-03-20 03:50:06

+0

它的工作,但我想在一次點擊添加名稱的姓氏我們如何做 – Carlos 2012-03-20 03:53:09

+0

看到添加的代碼,你的意思是這樣的..? – 2012-03-20 03:55:50

1

是,但你不能調用拆分數組。

var j = new Array() 
for (var i in m) { 
    j.push(m[i].split('_')) 
} 
0

如果您使用的JavaScript 1.6或更高版本,可以使用Array的map功能遍歷數組中的每個成員和下劃線拆分成員(字符串):

var m = ["jitender_chand", "shashi_cant"]; 
var j = m.map(function (name){ 
    return name.split("_")[1]; 
}); 

document.getElementById('add').innerHTML = j;