我在cosole中得到這條消息:Uncaught TypeError: undefined is not a function
它真的讓我發瘋了!沒有我能看到的錯誤,但也許別人能幫助我。「Uncaught TypeError:undefined不是函數」,同時使用str.indexOf函數
var nav = document.getElementsByClassName('navigation');
console.log(nav);
console.log(nav[0]);
var nav_e = nav[0];
//var searched = nav[0].search('<a href="forumdisplay.php?fid=11">Deck - Lab</a>');
if (nav_e.indexOf('<a href="forumdisplay.php?fid=11">Deck - Lab</a>') > -1) {
var list = document.getElementsByClassName('post_body');
var xmlhttp = new XMLHttpRequest();
var pbelement_encoded = '';
var pbelement = ''
for (i = 0; i < list.length; i++) {
var element = list[i];
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
var result = xmlhttp.responseText;
var result2 = result.replace(/fhvjgvghepoapeoaareupo/g,'');
element.innerHTML = (xmlhttp.responseText.replace(/fhvjgvghepoapeoaareupo/g,''));
}
}
pbelement_encoded = encodeURIComponent(element.innerHTML);
pbelement = 'pb='+pbelement_encoded;
//alert(pbelement);
xmlhttp.open("POST","http://theepicsurge.altervista.org/PostAnalyzer.php",false);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded")
xmlhttp.send(pbelement);
}
}
}
第一if
語句錯誤ocures:if (nav_e.indexOf('<a href="forumdisplay.php?fid=11">Deck - Lab</a>') > -1) {
我也試圖與nav_e.search
更換nav_e.indexOf
,但它不會改變任何東西
由「nav_e」引用的事物實際上不能是字符串。它不是'null'或'undefined',但它不是一個字符串(或字符串)。將調用添加到'console.log(「nav_e是一個」+(typeof nav_e));' – Pointy 2014-09-06 18:51:58
它實際上是HTMLElement,是document.getElementsByClassName('navigation')[0]'的結果。要檢查其內容,請改爲使用'nav [0] .innerHTML.indexOf(...)'。或者,更好的是,直接檢查相應的元素(使用'querySelector('a [href =「forumdisplay.php?fid = 11」]') – raina77ow 2014-09-06 18:52:45
@ raina77ow oh duhh - 我已經滾動頂部:) – Pointy 2014-09-06 18:53:04