我不太擅长脚本,但是我创建了一个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
,如果这些字段为空白,是否可以隐藏该字段?
答案 0 :(得分:1)
使用NaN检查器函数isNaN()如下:
if(!(isNaN(hrsRez)) && !(isNaN(minRez)) {
this.getField("Totalhrs1").value = hrsRez + ":" + minRez;
}
答案 1 :(得分:0)
尝试一下:
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;