2

我下面的函数在 var pos1=dtStr.indexOf(dtch) 处不断中断

function isDate(dtStr){
    var daysInMonth = DaysArray(12);
    var pos1 = dtStr.indexOf(dtCh);
    var pos2 = dtStr.indexOf(dtCh, pos1 + 1);
    var strMonth = dtStr.substring(0, pos1);
    var strDay = dtStr.substring(pos1 + 1, pos2);
    var strYear = dtStr.substring(pos2 + 1);
    strYr = strYear;

我收到的错误消息是 SCRIPT438:对象不支持属性或方法“indexOf”。我在变量之后取出了所有代码,但仍然收到相同的错误

4

2 回答 2

2

isDate函数期望其dtStr参数为 a String(如indexOfsubstring函数调用所示)。但是,该函数是使用类型Object而不是的参数调用的String。您将需要修改调用此函数的代码以将正确的参数传递给isDate函数。

于 2011-11-16T21:48:03.240 回答
1

你说你在做onkeyup="isDate(this);"。这是将元素传递给isDate,您需要先获取它的值才能使用它。

function isDate(dtStr){
    dtStr = dtStr.value;
    // ...
}
于 2011-11-16T22:06:05.203 回答