2017-05-30 39 views
-1

所以我有結構如下圖如何在數組中設置拆分字符串?

<input type="text" class="search-hotels" placeholder="" data-other-placeholder="Test 1|Test 2|Test3"/>

,當你看到我有data-other-placeholder屬性,我拆我的字符串(|)支架

var placeTarget = $(".search-hotels"), 
 
    getPlaceholder = placeTarget.data("other-placeholder"), 
 
    splitData  = getPlaceholder.split("|");
和我想在數組列表中分配這個字符串,並打印結果我怎麼能 去做 ?

+1

conso le.log(splitData)?這似乎是正確的,這有什麼問題? – jdmdevdotnet

+2

分割函數默認返回一個數組,還有什麼你需要更多? – Dimitri

+0

我想造成這樣的'變種placeholderText = [ 「你在哪裏願意去嗎?」, 「阿姆斯特丹?」, 「巴黎?」, 「柏林?」, 「倫敦?」, 「新約克?「, 」舊金山?「 ];' –

回答

0

每個使用jQuery,爲每個陣列項目運行的功能。 使用.append將HTML輸出到目標元素,就像我在這裏輸入id="output"元素來輸出我的結果。

$.each(splitData, function(index, value) { 
    $('#output').append('<div>'+value+'</div>'); 
}); 

var placeTarget = $(".search-hotels"), 
 
    getPlaceholder = placeTarget.data("other-placeholder"), 
 
    splitData = getPlaceholder.split("|"); 
 

 
//$('#output').text('"' + splitData.join('","') + '"'); 
 

 
$('#output').append(document.createTextNode('"' + splitData.join('","') + '"'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" class="search-hotels" placeholder="" data-other-placeholder="Test 1|Test 2|Test3" /> 
 
<div id="output"> 
 

 
</div>

+0

所以我們可以像這樣打印它'''Test1「,」Test 2「' –

+0

@ani_css好的檢查更新的那個 –

+0

@canon感謝您的提示,你的意思是我應該創建整個元素塊,然後附加在每個循環的末尾?像回調? –

0

使用String.prototype.split()已經返回一個數組 - 迭代它並使用Array.prototype.push()push新值到您的數組。

在你的榜樣

所以......

var testString = 'test|test1|test2'; 
 

 
var arrayToPush = ['Where would you like to go?']; 
 

 
var testStringParsed = testString.split('|'); 
 

 
for(var i = 0; i < testStringParsed.length; i++){ 
 
    var string = testStringParsed[i]; 
 
    arrayToPush.push(string + '?'); 
 
} 
 

 
console.log(arrayToPush);

-1

你對你的最後一行這樣做 「在數組列表中指定該字符串」:

splitData = getPlaceholder.split("|"); 

「和打印結果」

你可以做到這一點:

console.log(splitData); 

但你也可以interate陣列並打印了一個結果之一,具有簡單對於或類似的東西:

splitData.forEach(function(element, index){ 
    console.log(element); 
}); 
+1

不知道爲什麼這麼低估了,我認爲你在回答這個問題方面做得很好 – jdmdevdotnet

+0

@jdmdevdotnet也許是因爲他改變了評論的主題而沒有改變問題...... – Toug