2009-08-22 4 views
0

私は自分自身に文字列に文字列が含まれているかどうかを判断する必要があるプロジェクトを持っています。 例:私が探している何 「website.com」 「jsngsowebsite.comadfjubj」のように見えるかもしれないです何JavaScriptで文字列の内容を確認する

これまでのところ、私自身endevoursは、この得られている:

titletxt = document.getElementById('title'); 
titlecheck=titletxt.IndexOf("website.com"); 

if (titlecheck>=0) 
{ 
    return false; 
} 

ないがトリックをやっているようだ、何か提案?

答えて

1

JavaScript関数は、大文字と小文字が区別されます - indexOfないIndexOf

4
function text(el) { 
    return el.innerText ? el.innerText : el.textContent; 
} 

function contains(substring, string) { 
    return string.indexOf(substring)>=0 
} 

contains('suggestions', text(document.getElementsByTagName('body')[0])) 

文字列とDOM要素を参照して... '提案' とdocument.getElementsを交換してください。あなたもそのメソッドを持っていませんDOM要素のIndexOfメソッド(I小文字)を使用しようとしているように見えます

titlecheck=titletxt.IndexOf("website.com"); 

は、テキストのTextContent(標準DOMプロパティ)またはのinnerText(内側にありますIE固有のプロパティ)。

+0

contains関数は> = 0にする必要がありますが、そうでない場合はDOM要素のinnerTextを指し示すために+1します – gnarf

+0

innerTextはIE DOM固有ですが、感謝しました。 –

0

ます。またString.matchを使用することができます(...)

title = document.getElementById('title'); 
titletxt = title.innerText ? title.innerText : title.textContent 
titlecheck = titletxt.match("website.com"); 

if (titlecheck != null) { 
    return false; 
} 

String.matchは一致が見つからない場合はnullを返し、マッチがある場合、検索文字列( "website.com")を返します。あなたがのindexOf()メソッドを使用することができます

1

が見つかりました:

タイトル= "lalalawebsite.comkkkを"。

// indexOfは、 'website.com'という文字列が 'title'に見つからない場合、-1を返します。 titlecheck = title.indexOf( "website.com")> 0ですか? "見つかった": "見つからなかった";

alert(titlecheck);

関連する問題