人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

JQueryでの複数回の文字列置換の方法を教えて下さい。

index.htmlに
<input type="button" id="replace" value="置換!">
<p id="foo">デフォルト</p>

と書かれていて、#replaceボタンをクリックする度に、p#fooにあるデフォルトという文字列が"一番"→"二番"→"三番"と変わるようにしたいのですが、うまくいきません。

実際に書いてダメだったのは下記のようなものです。
"デフォルト"が"一番"に変わるまではいいのですが、"一番"が"二番"に変わってくれません。コンソールではreplace_foo[count]の値が"二番"、"三番"になるのは確認しましたが・・・

<script type="text/javascript">
var count = -1;
var replace_foo = ["一番", "二番", "三番"];
$(function() {
$("#replace").click(function() {
count += 1;
$('p#foo').replaceWith(replace_foo[count]);
});
});
</script>

宜しくお願いします。

●質問者: fenrifja
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Cherenkov
ベストアンサー

replace_foo[count]は普通の文字列なので、replaceWithメソッドではなくtextとかattrが適していると思います。

http://jsfiddle.net/cherenkov/B448d/

<button id="replace">btn</button>
<p id="foo">0</p>
<script type="text/javascript">
  var count = -1;
  var replace_foo = ["一番", "二番", "三番"];
  $(function() {
    $("#replace").click(function() {
      count += 1;
      $('p#foo').text(replace_foo[count]);
    });
  });
</script>

fenrifjaさんのコメント
Cherenkovさん 回答ありがとうございます。 「置換」のやり方がわからない・・・と思考停止しており、頭が回っていませんでした。 大変助かりました。ありがとうございました。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ