iT邦幫忙

0

104出勤刷卡資料沒有出來

https://ithelp.ithome.com.tw/upload/images/20191128/20118928TyLIaUTXvt.pnghttps://ithelp.ithome.com.tw/upload/images/20191128/20118928XNfYJwv97S.png
IE上我相容檢視也新增了,安全性也新增了,java也裝了還是不行,有高手知道哪邊有問題嗎......?求解感謝!/images/emoticon/emoticon02.gif

看更多先前的討論...收起先前的討論...
可以看看你的 checkDT 嗎 我通靈功力沒其他前輩的厲害
通靈邦幫忙
神算邦幫忙
抱歉抱歉!都在這了= =

<html>
<head>
<title>104eHR</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel=stylesheet type="text/css" href="../../../stylesheet/style.css">
<SCRIPT language=JavaScript src="../../../function/MM_topWindow.asp"></SCRIPT>
<SCRIPT language=JavaScript src="../../../function/Pro.js"></SCRIPT>
</head>

<body bgcolor="#ADD6D6" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" tabindex=-1 scroll=no>
<form name="topFrame" Method="Post" Action="Attendance_CardMachine_Check.asp">
<input type="hidden" name="op">
<input type="hidden" name="UrlValue" value="">

<FIELDSET >
<LEGEND>刷卡資料核對</LEGEND>
<table width="100%" border="0" cellspacing="2" cellpadding="0" align="center">
<tr>
<td height="38">
<div align="center">日期範圍
<input type="text" name="txtDT1" style="width:120px;" value="" onkeypress="return DateOnly();" onblur="CheckDate(this,false);" ondblclick="Calendar(this);">

<input type="text" name="txtDT2" style="width:120px;" value="" onkeypress="return DateOnly();" onblur="CheckDate(this,false);" ondblclick="Calendar(this);">



<img src="../../../img/space.gif" width="20" height="10" align="absmiddle">
<input type="button" name="cmdMatch" value="刷卡資料核對" style="width:120px" onClick="if (Validator()){checkDT(document.all.txtDT1.value,document.all.txtDT2.value,document.all.op)};checkMatch();">
<img src="../../../img/space.gif" width="10" height="10" align="absmiddle">
<input type="button" name="cmdRawdata" value="上下班識別碼產生" style="width:120px" onClick="if (Validator()){checkDT(document.all.txtDT1.value,document.all.txtDT2.value,document.all.op)};checkRawdata();">
<img src="../../../img/space.gif" width="10" height="10" align="absmiddle">
<input type="button" name="cmdRawdata" value="單一員工刷卡核對" style="width:120px" onclick="SingleCheck();">

</div>
</td>
</tr>
</table>
</FIELDSET></form>
</body>
</html>
<script language=vbscript>
function checkDT(StartDate,EndDate,F)
F.value="True"
IF StartDate="" or EndDate="" then
msgbox "請輸入日期範圍。",64,"訊息"
F.value="False"
End IF

IF StartDate<>"" and EndDate<>"" and F.value<>"False" then
strDiff=DateDiff("d",StartDate,EndDate)+1
if strDiff<=0 then
msgbox "結束日期必須大於開始日期。",64,"訊息"
F.value="False"
elseif strDiff>7 then
msgbox "核對日期範圍請勿超過 7 天。",64,"訊息"
F.value="False"
else
F.value="True"
end if
End IF

msgnum=0

if DateDiff("d",now(),StartDate)>0 and F.value="True" then
msgbox "檢核起日請勿超過今天。",64,"訊息"
' msgnum=msgbox("檢核日期確定要超過(含)今天嗎 ?",4,"訊息")
' if msgnum<>6 then
F.value="False"
' end if
End IF
if DateDiff("d",now(),EndDate)>0 and F.value="True" and msgnum<>6 then
msgbox "檢核迄日請勿超過今天。",64,"訊息"
'msgnum=msgbox("檢核日期確定要超過(含)今天嗎 ?",4,"訊息")
'if msgnum<>6 then
F.value="False"
'end if
End IF

end function
</script>
<Script language="Javascript">
//開啟選擇日期視窗
function Calendar(pObj)
{
if (pObj.className=="Uneditable")
return;

var lRet;
lRet = gfcOpenCalendar(trim(pObj.value),"A",false,'../../../function/calendar.htm');
if (lRet.eDate!='')
{pObj.value = trim(lRet.eDate);}
}

function Validator()
{
//檢查日期欄位輸入正確 (pObj為textbox物件名稱,pShowMsg為檢查格式錯誤時是否顯示錯誤訊息)
if (!CheckDate(document.all.txtDT1,true))
{
document.all.txtDT1.focus();
return false;
}

//檢查日期欄位輸入正確 (pObj為textbox物件名稱,pShowMsg為檢查格式錯誤時是否顯示錯誤訊息)
if (!CheckDate(document.all.txtDT2,true))
{
document.all.txtDT2.focus();
return false;
}


return (true);
}

function checkMatch() {
if (document.all.op.value=="True") {
B=MM_topWindow('Attendance_CardMachine_Check_Now.asp?pType=Match&dt1='+document.all.txtDT1.value+'&dt2='+document.all.txtDT2.value,140,135,'刷卡資料核對中...');
//alert(B);
if (B) {
// alert('exec true');
parent.frames.mainFrame.document.location.replace('Attendance_CardMachine_DataError.asp')
}
}
}

function checkRawdata() {
if (document.all.op.value=="True") {
document.all.op.value='Rawdata';
topFrame.submit();
}
}

if (''=='0'){
str='' + '~' + '' +'已有出勤刷卡資料,若重新產生上下班識別碼,將完全清除既有資料,是否確定執行?';
if(confirm(str)) {
RunRawdata();
}
}else if (''=='1'){
RunRawdata();
}

function RunRawdata(){
B=MM_topWindow('Attendance_CardMachine_Check_Now.asp?pType=Rawdata&dt1='+document.all.txtDT1.value+'&dt2='+document.all.txtDT2.value,140,135,'上下班識別碼產生中...');
if (B) {
//若原本下方即為「刷卡核對異常資料」或「刷卡核對資料」頁籤,則帶到「出勤刷卡資料」頁籤


//若原本下方即為「出勤刷卡資料」或「門禁刷卡資料」頁籤,則帶回原本頁籤
if (document.all.UrlValue.value=='3'){
parent.frames.mainFrame.document.location.replace('PELAttend_CardMachine_DataSource.asp')
}else{
parent.frames.mainFrame.document.location.replace('PELAttend_CardMachine_DataAttend.asp')
}
}
}

// Modified By Andy Chao at 2013/02/18
function SingleCheck() {
B = MM_topWindow('Attendance_CardMachine_Single_Check.asp', 520, 200, '單一員工刷卡資料核對');
if (B) {
if (B == '2') {
parent.frames.mainFrame.document.location.replace('PELAttend_CardMachine_DataAttend.asp')
} else {
parent.frames.mainFrame.document.location.replace('Attendance_CardMachine_DataError.asp')
}
}
}
// End of Modified
</script>
froce iT邦大師 3 級 ‧ 2019-11-28 14:59:09 檢舉
vbscript...
上古code。

win10 7月更新關掉了VBscript的支援。
https://support.microsoft.com/en-us/help/4012494/option-to-disable-vbscript-execution-in-internet-explorer-for-internet
所以也有可能是因為WIN10更新造成這個的問題瞜
froce iT邦大師 3 級 ‧ 2019-11-29 10:48:46 檢舉
你可以試試看,我沒有把你的程式碼看完,下面listennn08兄的答案應該更符合。
通常是你用VBSCRIPT寫就是只能用VBSCRIPT,當然建議就是改寫。

2 個回答

1
listennn08
iT邦新手 3 級 ‧ 2019-11-28 15:00:05

你在 onclick 用 js 語法呼叫 vbs 這樣的用法是合法的嗎

if (Validator()) {
    checkDT(document.all.txtDT1.value,document.all.txtDT2.value,document.all.op)
}

它應該會直接判別沒這個 js function 吧
你可以在 js 定義一個 checkDT 裡面放 console 就知道了

0
peter1024
iT邦見習生 0 級 ‧ 2019-11-29 15:06:43

http://www.blueshop.com.tw/board/FUM20041006152641OLG/BRD20051124110355XH6.html

請參考這個看看,有沒有辦法解決你的需求

我要發表回答

立即登入回答