JavaScriptの文字列置換とjQueryのDOM要素置換のまとめ
JavaScriptの文字列置換とjQueryのDOM要素置換について、まとめて紹介します。
特にJavaScriptの文字列置換はいつもやり方を忘れてしまうので、このエントリーに保存しておきます。
1.replace()による文字列置換
基本的な文字列置換は、JavaScriptのreplace()メソッドを利用します。
var text = "foofoo";
var result = text.replace('foo', 'bar');
実行結果(resultの内容)
barfoo
2.replace()の正規表現による置換
replace()メソッドの第1パラメータに正規表現を指定すれば、さらに強力な文字列置換が行えます。
var text = "foofoo";
var result = text.replace(/foo/g, 'bar');
実行結果(resultの内容)
barbar
後方参照やグループ化なども可能です。
<script>
var text = "abcfooabc";
var result = text.replace(/^(.*)foo(.*)$/, '$1$2');
</script>
実行結果(resultの内容)
abcabc
3.jQueryのreplaceWith()によるDOM要素置換1
jQueryのreplaceWith()メソッドを使えば、例えば次のようなDOM要素の置換が行えます。
<div>foo</div>
<script>
$(function(){
$('div').replaceWith('<div>bar</div>');
});
</script>
実行後のHTMLマークアップ
<div>bar</div>
4.jQueryのreplaceWith()によるDOM要素置換2
replaceWith()メソッドのパラメータに関数を定義すれば、次のようなDOM要素の置換が行えます。
<div class="container">
<div class="inner">foo</div>
<div class="inner">bar</div>
</div>
<script>
$(function(){
$("div.container").replaceWith(function() {
return $(this).contents();
});
});
</script>
実行後のHTMLマークアップ
<div class="inner">foo</div>
<div class="inner">bar</div>
5.jQueryのreplaceAll()によるDOM要素置換
replaceAll()メソッドは、replaceWith()メソッドと逆の指定を行います。replaceAll()メソッドのパラメータにターゲットの要素やclass属性を指定し、置換する内容を先頭に記述します。
<div>foo</div>
<script>
$(function(){
$('<div>bar</div>').replaceAll('div');
});
</script>
実行後のHTMLマークアップ
<div>bar</div>
次のように記述すれば、class属性値「third」のマークアップを、class属性値「first」のマークアップに置き換え、class属性値「first」の元のマークアップは消去されます。
<div class="first">Hello</div>
<div class="second">And</div>
<div class="third">Goodbye</div>
<script>
$(function(){
$('.first').replaceAll('.third');
});
</script>
実行後のHTMLマークアップ
<div class="second">And</div>
<div class="first">Hello</div>
6.参考サイト
参考サイトは下記です。ありがとうございました。
Posted by yujiro このページの先頭に戻る
- jQuery+ajaxでモーダルのコンテンツを取得する方法
- jQueryでパスワードの表示・非表示を切り替えるサンプル
- jQueryでファイル選択時にプレビュー表示する方法
- ラジオボタンをjQueryで解除する方法
- テーブルのセルをポイントすると行と列を反転表示するjQueryプラグイン「Table Hover」
- jQueryで親ページからiframeのスクロールバーを非表示にする方法
- jQueryのカスタムビルドが簡単にできるサービス「jQuery Builder」
- jQueryでCSSをまとめて書き換える方法のまとめ
- 親ページからiframe内の要素にCSSを適用させる方法
- jQueryで要素を削除する方法のまとめ
- jQueryでテキストを追加するたびにスクロールさせる方法
- jQuery.ajax()でファイルをアップロードする方法
- preventDefault()で無効にしたイベントを有効にする方法
- jQueryで要素数を取得する方法のまとめ
- jQueryやJavaScriptでパスワードフィールドの文字を表示する方法
トラックバックURL
コメントする
greeting