1

我正在使用 HTML5 并且 indexOf 给了我一个错误,那么我还能用什么来搜索字符串中的“正确”一词:a001_new_quiz_multiple_choice_new_mc4_correct.html它位于一个名为的变量中value1

function SetAPIValue(key1, value1)
{
   // alert("action is " + key1 + " and data is " + value1);
   console.log(value1);

   var str = "wrong";
   var n = str.search(value1);
   if (n > 0)
     alert("found");
}

我得到的错误:0x800a01b6 - Microsoft JScript 运行时错误:对象不支持属性或方法'indexOf'

4

3 回答 3

0

我不知道您如何使用 indexOf,但这有效:

var value1 = "a001_new_quiz_multiple_choice_new_mc4_correct.html";
var n = value1.indexOf("correct");
if (n >= 0) alert("found");   

也许你试过"correct".indexOf(value1);而不是value1.indexOf("correct");

示范

于 2012-10-25T08:08:47.357 回答
0

此错误是否仅在 IE 上发生?如果是这样 - 你应该注意 indexOf 没有在他们的 JS 中实现。尝试在 indexOf 中第一次使用之前添加以下代码:

if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function(obj, start) {
         for (var i = (start || 0), j = this.length; i < j; i++) {
             if (this[i] === obj) { return i; }
         }
         return -1;
    }
}
于 2012-10-25T08:14:18.463 回答
0

函数 SetAPIValue(key1, value1) {
   var regEx = new RegExp("正确");
   警报(regEx.test(value1));
}

于 2012-10-25T08:21:07.650 回答