function daysBetween()
{
DateOne = document.getElementById("date1").val();
DateTwo = document.getElementById("date2").val();
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-'));
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
document.write(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;
}每次提交表单的时候都提示“网页上有错误” 不知道为什么…… 我没专门学过JS,也不知道怎么调试……请问JS有没有可能显示出具体出错的行数和原因? 每次都只是提示网页上有错误,不知道怎么解决
DateTwo = document.getElementById("date2").val();没有定义
改成var DateOne = document.getElementById("date1").val();
var DateTwo = document.getElementById("date2").val();试试看
修改好了,还是有错
function daysBetween()
{
var DateOne = document.getElementById("date1").val();
var DateTwo = document.getElementById("date2").val();
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-'));
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
document.write(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;
}
function daysBetween()
{
var DateOne = document.getElementById("date1");
var DateTwo = document.getElementById("date2");
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-'));
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
document.write(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;
}
修改了一下,现在行27出错了,还是不支持此属性或方法
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-')); 这是第27行的内容 alert(DateOne);得到的提示是:Object
function daysBetween()
{
var DateOne = document.getElementById("date1").value;
var DateTwo = document.getElementById("date2").value;
//这样看看看
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-'));
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
document.write(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;
}
这个得到的是一个对象,不是值
应该这么写:var DateOne = document.getElementById("date1").value;
第一次报错是因为没有.val()这个方法,应该用.value属性
function daysBetween()
{
var DateOne = document.getElementById("date1").value;
var DateTwo = document.getElementById("date2").value;
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-'));
var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-'));
var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
alert(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;
}输出结果为NaN
{
var DateOne = document.getElementById("date1").value;
var DateTwo = document.getElementById("date2").value;
var OneMonth = DateOne.substring(5,DateOne.lastIndexOf ('-'));
var OneDay = DateOne.substring(DateOne.length,DateOne.lastIndexOf ('-')+1);
var OneYear = DateOne.substring(0,DateOne.indexOf ('-')); var TwoMonth = DateTwo.substring(5,DateTwo.lastIndexOf ('-'));
var TwoDay = DateTwo.substring(DateTwo.length,DateTwo.lastIndexOf ('-')+1);
var TwoYear = DateTwo.substring(0,DateTwo.indexOf ('-')); var cha=((Date.parse(OneMonth+'/'+OneDay+'/'+OneYear)- Date.parse(TwoMonth+'/'+TwoDay+'/'+TwoYear))/86400000);
document.write(Math.abs(cha)); //这里将日期差取了绝对值,如果需要-号不被去掉,则用return cha;}页面中:<input id="date1" type="text"/><br/>
<input id="date2" type="text"/>
<input type="button" onclick="daysBetween()" value="ssssss">这个我试过的,可以,你在看看页面中的标签的id有没有定义,