2012-08-02 47 views
0

我有文本輸入框和倒計時在同一頁上。我想從箱子裏拿出時間,然後進入櫃檯。我從文本框「setTime」中得到了一個變量。我想直接將它放入我的timeSplit函數(將時間轉換爲秒),但是當我這樣做時,我得到一個錯誤,「time.split不是函數」。我在這裏做錯了什麼?通過變量不與我的功能 - Javascript的

當我有一個靜態變量輸入函數(例如時間=「12:12:12」),一切正常。 - 除了它沒有使用正確的時間

當我在timeSplit函數之前在setTime上運行彈出警報時,我看到我的時間像這樣「12:12:12」,所以它來自櫃檯沒有問題,我不「T得到NaN的錯誤

爲什麼會隨時間變化的工作時,其靜態的,但不是當它通過

我試過時刻設定轉換爲字符串,但只是導致NaN的錯誤,甚至當我試圖轉換秒變量返回一個int。

我想這是相關的代碼讓我知道,如果你需要更多。

var setTime = 0; 
var $fromTime = $("#formEntry"); 

$("#setTime").off("click").on("click", function(){ 
    setTime = $fromTime.val(); 
}); 

function timeSplit(){ 
    //time = "12:12:12"; 
    tt = time.split(":"); 
    sec = tt[0]*3600+tt[1]*60+tt[2]*1; 
    return sec; 
} 

var time = setTime; 
//var time = "12:12:12"; 
var sec = timeSplit(time); 

回答

3

您的功能timeSplit()不帶任何參數。它需要是timeSplit(time),以便JavaScript知道您正在討論的是在名爲time的對象上調用方法.split(),而不是僅稱爲time.split()的函數。

如果這不僅僅是一個錯字(我已經完成之前),我建議你閱讀一些函數參數和參數,所以你知道你明白這是如何工作的,這是非常重要的。