回 帖 发 新 帖 刷新版面

主题:报“遇到被零除错误”是什么原因

我用函数:
<script language="javascript">
function DiffADate(){
 DiffADate=DateDiff(d,"strChkDate2","strChkDate1");            
}     
</script>求两个日期之间的时间间隔,然后把函数function DiffADate()写入文本框中:
input name="tCheckTm3" type="text" id="tCheckTm3"value=" "onFocus="this.value=DiffADate()"  size=10 maxlength="10" >
执行程序报错:
Error in -2147217900 Microsoft OLE DB Provider for SQL Server
遇到被零除错误。
这是什么原因啊,请高手帮帮忙,急。

回复列表 (共6个回复)

沙发

DateDiff这个好象是asp函数,你怎么用到javascript中去了

板凳

用这个
function   doit()   
  {   
  var   D1   =   new   Date(date1.value);   
  var   D2   =   new   Date(date2.value);   
  if(isNaN(D1)   ||   isNaN(D2))   
  {   
  alert("输入非法");   
  }   
  else   
  {   
  dif.innerText   =   (D2.getTime()   -   D1.getTime())/(1000*60*60*24)   +   "天";   
  }   
  }

3 楼


这为兄弟,我用你那个方法还是报那个错.我的思路是这样的:
我的页面上有三个文本框,一二两个文本框输入日期,第三个文本框获取前面两个日期的时间间隔,然后把这个值传给参数:Cmd.Parameters.Append cmd.CreateParameter("@timeint ", 200, 1, 4, strChkDate3(表示时间间隔)),(解释:因我的存储过程有这个参数获取时间间隔)
function isValid(){ 
 var date1=document.form1.tCheckTm1.value;
 var date2=document.form1.tCheckTm1.value;
   if(isNaN(date1)||isNaN(date2))   
   {   alert("输入非法");}   
    else   
    {   
          dif.innerText=(date2.getTime()-date1.getTime())/(1000*60*60*24)+"天";   
         }   
         }这个函数怎么赋值给我的第三个文本框,我是这样赋的:
<input type="text" id=tCheckTm3 name=tCheckTm3 size="10" onFocus="isValid()"  >,

4 楼

var date1=document.form1.tCheckTm1.value;
 var date2=document.form1.tCheckTm1.value;
两个赋值都一样?

5 楼

不是同一个日期,是两个日期,写错了

6 楼

function isValid(){ 
  var date1=document.form1.tCheckTm1.value;
  var date2=document.form1.tCheckTm2.value;
  var date3 = document.form1.tCheckTm3.value;
  if(date1 == "" || date2 == ""){
     alert("请选择时间段!");
return false;
}
if (date1>date2){
 alert("该时间段不正确,请重新输入!");
 form1.tCheckTm1.focus();
 return false;
}
if(isNaN(date1)||isNaN(date2))   
{   
 alert("输入非法");   
 }   
else   
{   
  dif.innerText=(date2.getTime()-date1.getTime())/(1000*60*60*24)+"天";   
        } 
以上是我的三个文本框的参数.
window.open("simulator_Simulatortjrep_result_NEW.asp?selectedPortList=" + ls_str + "&tCheckTm1="+date1+ "&tCheckTm2="+date2+"&tCheckTm3="+date3+"&value_flag="+sValue_flag,
"",  '<% = Session("Windowopen_props")%>');这个是打开窗体,
我的思路就是我上面说到的那样,怎么把两日期的间隔算出来后,在赋值给第三个文本框(tCheckTm3),多谢了,兄弟

我来回复

您尚未登录,请登录后再回复。点此登录或注册