2014-09-12 29 views
0

的陣列前面基本上我有一個輸入框(#status)和一個提交按鈕(.btn),當我鍵入輸入的東西,按下按鈕,我想要的價值我輸入的內容添加到陣列的前面(.unshift(...))。唯一的問題是,讓我們說我輸入「hello」,這是正確添加爲appendElements = [「hello」];但是如果我輸入「bye」,而不是使用additionalElements = [「bye」,「hello」];它只顯示[「bye」];等等添加到JQuery的

這裏是我的代碼:

$('.btn').click(function(){ 

      var statusInput = $('#status').val(); 
      var appendedElements = []; 

      appendedElements.unshift(statusInput); 
      console.log(appendedElements); 

}); 

我希望我是很清晰,謝謝!

回答

0

問題是,每次點擊數組都會被重新初始化,所以您將始終在數組中有一個項目。

你必須使它全球:

var appendedElements = []; 

$('.btn').click(function(){ 
    var statusInput = $('#status').val(); 
    appendedElements.unshift(statusInput); 
    console.log(appendedElements); 

}); 
+0

.unshift是一樣的,但推動其添加到前面來代替。我以前試過.push。我會盡力讓它全球化,謝謝你,我認爲這可能會奏效。 – NotToBrag 2014-09-12 21:23:08

+1

@NotToBrag看到編輯,問題是陣列每次都重新初始化,所以以前的項目都不見了 – 2014-09-12 21:23:44

+0

喲,謝謝Ehsan!如果時間限制結束,我會接受你的回答。 – NotToBrag 2014-09-12 21:26:49