Chrome を使って、テキストボックスに入力した文字列がそのページに何件あるかを表示するプログラムを考えています。
JavaScript の window.find を使うのだと思いますが、具体的にうまくできません。
関数部分だけで結構ですので、どのように記述すればよいか教えてください。
※
ローカル専用です。自分しか使いません。
基本は Chrome、できれば Firefox と IE で動けばなおよしです
文字列入力と JavaScript に渡すところ、件数を HTML に出力するところはなくてもOKです (あれば嬉しいですが)。
OS は Windows, Chrome は 4.0 です。
http://example.com/ (dummy)
window.findは検索ダイアログを出す関数であるので今回の目的に利用することはできません.
個数を数える場合は自分で記述する必要があります.
簡易的な物だと以下のようになります.
function search_count(text, search) { return (text+"").split(search).length - 1; } var input = "JavaScript"; // document.getElementById("input").value等で取得する alert(search_count(document.documentElement.textContent, input)); // 大文字小文字を区別する場合 alert(search_count(document.documentElement.textContent, new RegExp(input.replace(/\W/g, "\\$&"), "i"))); // 大文字小文字を区別しない場合
正常に動作することを確認しました。
return (text+"").split(search).length - 1; のところ、「-1」は不要のようです。
大文字小文字のパターンも作っていただきありがとうございました。