これは、答えられなかったこの古い質問と同様の質問です: jquery を使用して電話番号を <a> タグで囲みます。
カスタム CMS を使用する既存のサイトから単純な jQuery モバイル サイトを作成しています。CMS には、次のようなコードとテキストを含むエントリがあります。
<div id="departments">
<ul>
<li> Department 1 - (555) 123-1234</li>
<li> Department 2 - (555) 123-4321</li>
<li> Department 3 - (555) 123-6789</li>
</ul>
</div>
ほとんどの携帯電話ブラウザーは、電話番号をクリック可能なリンクに自動的に変換し、電話番号を使用してダイヤラーを起動することを知っています。ただし、すべてがそうするわけではなく、jQueryを使用して上記を次のように変換できるようにしたいと考えています。
<div id="departments">
<ul>
<li> Department 1 - <a href="tel:5551231234">(555) 123-1234</a></li>
<li> Department 2 - <a href="tel:5551234321">(555) 123-4321</a></li>
<li> Department 3 - <a href="tel:5551236789">(555) 123-6789</a></li>
</ul>
</div>
これを生成する手順には、正規表現を使用して電話番号のパターンを照合することが含まれることを理解しています。
何か案は?これは、多くの人のために作成するのに役立つプラグインになると思います。
アップデート
以下の回答とコメントを使用して試したことは次のとおりです。
var regex = ((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4};
var text = $("body:first").html();
text = text.replace(regex, "<a href=\"tel:$1\">$1</a>");
$("body:first").html(text);
フィドル: http://jsfiddle.net/PShYy/
http://gskinner.com/RegExr/?35o5pを使用して、パターンが機能するはずであることがわかります。
jQueryで正規表現を使用して検索と置換を正しく行う方法が問題になっていると思います。研究を続けますが、もし誰かがチャイムを鳴らしたいなら、私はそれを感謝します.