我不太擅长脚本,但我创建了一个PDF可填写的表格来计算工作时间。当没有输入数据时,结果字段显示NaN:NaN
,如果字段为空,有没有办法隐藏它?
我使用的脚本公式是.....
var hrsStart = parseInt(this.getField("hrsstart1").value.split(":")[0]);
var minStart = parseInt(this.getField("hrsstart1").value.split(":")[1]);
var hrsEnd = parseInt(this.getField("hrsend1").value.split(":")[0]);
var minEnd = parseInt(this.getField("hrsend1").value.split(":")[1]);
if (minStart > minEnd) {
var minRez = 60 + minEnd - minStart;
var hrsRez = hrsEnd - 1 - hrsStart;
} else {
var minRez = minEnd - minStart;
var hrsRez = hrsEnd - hrsStart;
}
this.getField("Totalhrs1").value = hrsRez + ":" + minRez;
当没有输入数据时,结果字段显示NaN:NaN
,如果字段为空,有没有办法隐藏它?
使用 NaN 检查函数 isNaN((,如下所示:
if(!(isNaN(hrsRez)) && !(isNaN(minRez)) {
this.getField("Totalhrs1").value = hrsRez + ":" + minRez;
}
试试这个:
var startValue = this.getField("hrsstart1").value;
var endValue = this.getField("hrsend1").value;
var timeValue = '';
if(startValue && endValue)
{
var startArr = startValue.split(":");
var endArr = endValue.split(":");
var hrsStart = parseInt(startArr[0]);
var minStart = parseInt(startArr[1]);
var hrsEnd = parseInt(endArr[0]);
var minEnd = parseInt(endArr[1]);
if(!isNaN(hrsStart) && !isNaN(minStart) && !isNaN(hrsEnd) && !isNaN(minEnd))
{
var minRez, hrsRez;
if (minStart > minEnd) {
minRez = 60 + minEnd - minStart;
hrsRez = hrsEnd - 1 - hrsStart;
} else {
minRez = minEnd - minStart;
hrsRez = hrsEnd - hrsStart;
}
timeValue = hrsRez + ":" + minRez;
}
}
this.getField("Totalhrs1").value = timeValue;