2012-08-02 29 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()的函数。

如果这不仅仅是一个错字(我已经完成之前),我建议你阅读一些函数参数和参数,所以你知道你明白这是如何工作的,这是非常重要的。