我创建了自己的javascript代码以获得Nintex表格中两个日期之间的工作日
我有两个带有cssclass名称的日期选择器: DateFromStr 和 DateToStr 。
带有客户ID javascript名称 jsText 的单行文本。
之所以我为我的datepicker设置一个cssclass名称是因为实际上DateFromStr和DateToStr实际上并不是一个日期选择器。
我的日期选择器自动返回格式为dd / MM / yyyy的日期,当我尝试计算时它会打扰,所以我将datepicker中的值传递给CalculatedValue为MM / dd / yyyy格式。
下面的代码工作正常,但是当我尝试将所有控件放在转发器中时,它不起作用
我想调用转发器名称是最好的方法,我试过但它不起作用。我需要你的建议。非常感谢你。
function calculate()
{
var dateFrom=new Date();var dateTo=new Date();
var jsFrom=NWF$('.DateFromStr').find('input');
var jsTo=NWF$('.DateToStr').find('input');
dateFrom=new Date(jsFrom.val());
dateTo=new Date(jsTo.val());
var iWeeks, iDateDiff, iAdjust = 0;
var iWeekday1=dateFrom.getDay();
var iWeekday2=dateTo.getDay();
iWeekday1 = (iWeekday1 == 0) ? 7 : iWeekday1;
iWeekday2 = (iWeekday2 == 0) ? 7 : iWeekday2;
if ((iWeekday1 > 5) && (iWeekday2 > 5))
{iAdjust = 1;}
iWeekday1 = (iWeekday1 > 5) ? 5 : iWeekday1;
iWeekday2 = (iWeekday2 > 5) ? 5 : iWeekday2;
iWeeks = Math.floor((dateTo.getTime() - dateFrom.getTime()) / 604800000) ;
if (iWeekday1 <= iWeekday2)
{iDateDiff = (iWeeks * 5) + (iWeekday2 - iWeekday1);}
else
{iDateDiff = ((iWeeks + 1) * 5) - (iWeekday1 - iWeekday2);}
iDateDiff -= iAdjust;
var result=iDateDiff+1;
var txt=NWF$("#"+jsText);
txt.val(result);
}