nan:在PDF格式的字段背景中的nan

时间:2016-02-02 09:47:56

标签: javascript pdf time

我有一个字段,根据他们的工作量计算白天自由职业者的总小时数和分钟数。我的问题是,在插入任何时间之前,在字段中总是可以看到以下文本(nan:nan)我在我的代码下方使用,有人可以让我知道如何使其不可见,谢谢。

function Min2HHMM(nMinutes) {
// convert minutes to HH:MM string and returns formatted time string
return util.printf("%,001.0f:%,202.0f", Math.floor(nMinutes / 60), nMinutes % 60);
}

var T1 = this.getField("Start_Mon_01").value;
var T2 = this.getField("Finish_Mon_01").value;
var T3 = this.getField("Start_Mon_02").value;
var T4 = this.getField("Finish_Mon_02").value;


var start = T1.split(":");
var startmins1 = parseInt(start[0] * 60,10) + parseInt(start[1],10);

var finish = T2.split(":");
var finishmins1 = parseInt(finish[0] * 60,10) + parseInt(finish[1],10);

var start = T3.split(":");
var startmins2 = parseInt(start[0] * 60,10) + parseInt(start[1],10);

var finish = T4.split(":");
var finishmins2 = parseInt(finish[0] * 60,10) + parseInt(finish[1],10);

var timeDiff = finishmins1 - startmins1 + finishmins2 - startmins2;
event.value = Min2HHMM(timeDiff);

1 个答案:

答案 0 :(得分:0)

有几种方法:

function getNum(str) {
   return isNaN(str) || str=="" ? 0:parseInt(str,10);
}

var T1 = getNum(this.getField("Start_Mon_01").value);
var T2 = getNum(this.getField("Finish_Mon_01").value);
var T3 = getNum(this.getField("Start_Mon_02").value);
var T4 = getNum(this.getField("Finish_Mon_02").value);

OR

return isNaN(nMinutes) ? "0:00": util.printf("%,001.0f:%,202.0f", Math.floor(nMinutes / 60), nMinutes % 60);

event.value = isNaN(timeDiff)?"0:00": Min2HHMM(timeDiff);

应该有用。

也不需要对你繁殖的东西进行解析。

parseInt(start[0] * 60,10)start[0] * 60

相同