2017-03-23 39 views
0

所以現在,我將值從我的vars打印到控制檯,但是我真正想要做的是每次用戶點擊「.one」時將這些值保存在新數組中。這甚至有可能嗎?如何保存變量的值?

這裏是我的代碼:

function addNewTimer() { 
    //add a new timer 
    $(".one .add").click(function() { 
    $('.one').append('<span class="newtimer stoptimer">1000</span><br/>').html(); 
    $('.one .newtimer:last').prop('Counter', 0).animate({ 
     Counter: 1000 
    }, { 
     duration: timerclock, //default 100 mins = 60000000, 
     easing: 'linear', 
     step: function(now) { 
     $(this).text(Math.ceil(now)); 
     } 

    }); 
    arr1 = {} 
    arr1.role = $(".one .positiontitle").text(); 
    arr1.team = "Account"; 
    arr1.rate = cost1; 
    arr1.time_start = new Date(); 
    arr1.time_start_perc = Number($(".stoptimer:first").text()/60); 
    console.log(arr1); 
    $(".one").append('<span class="role"></span><br/>').html(); 
    $(".one").append('<span class="team"></span><br/>').html(); 
    $(".one").append('<span class="rate"></span><br/>').html(); 
    $(".one").append('<span class="time_start"></span><br/>').html(); 
    $(".one").append('<span class="time_start_perc"></span><br/>').html(); 
    $(".one .role:last").append(arr1.role); 
    $(".one .team:last").append(arr1.team); 
    $(".one .rate:last").append(arr1.rate); 
    $(".one .time_start:last").append(arr1.time_start); 
    $(".one .time_start_perc:last").append(arr1.time_start_perc); 
    }); 
} 
+1

請張貼您的html,以便我們可以創建一個工作示例。 –

+0

刷新頁面時,數組應該是持久的嗎?你只需要在JS或PHP中的數組(因爲你添加了PHP標籤) – melvin

+0

你只是想添加一個值到數組?用'var myArray = [];'初始化數組,然後添加'myArray.push(arr1);' –

回答

0

您可以發送ajax請求來存儲數據。

near console.log(arr1);使用下面的(我假設你使用jQuery):

var dataArray=JSON.stringify(arr1); 
$.ajax({ 

    url: '/store.php', 
    type: 'POST', 
    data: { data: dataArray }, 
    success: function() {console.log('Data sent to server'); } 

}); 

現在你store.php可能看起來像這樣:

<?php 

    $data = $_POST; 

    var_dump($data); //debug if you want 

    //Now you can store in your database. 

您也可以使用,如果你想get請求,但記得要改變類型在你的JS代碼中。

我希望這對你有效,你一直在尋找這個。 :)

+0

嘿,這是我正在尋找!謝謝 –

0

,可以有以下選擇:

  • 本地保存你的數據在使用的localStorage瀏覽器。這是一個非常簡單的步驟,但用戶可以刪除這些數據。看看這個鏈接,如果你想使用localStorage: https://developer.mozilla.org/de/docs/Web/API/Window/localStorage

  • 保存您的數據在服務器上。因此,您需要一個將數據保存到數據庫,文件或其他內容的後端。您可以編寫一個非常簡單的PHP/NodeJS後端,其中包含一個API端點用於保存,另一端用於加載數據。 您可以使用jQuery.ajax()從服務器保存和加載數據。

+0

感謝您的回覆!事情是 - 我不只是想繼續推動這些值到同一個陣列。每當我們點擊「.one」時,我想創建一個全新的陣列。基本上,我想每次用戶按下按鈕時保存精確時刻的值,我不知道如何去做這件事。 –

+0

你想如何保存這些值 - 永久(下一次他訪問網站)或臨時(做一些有價值的東西)? - 我的問題是,我不知道你點擊後想用你的值做什麼。如果你更準確地解釋你想要做什麼,我想我可以幫助你更多。 – archos

+0

好吧,所以我基本上希望我的值永久保存在一個單獨的頁面上。 –