• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryで書き換えた要素のリセット)

jQueryで要素のリセット方法は?

このQ&Aのポイント
  • jQueryでDOMの書き換えを行いたい場合に、要素をリセットする方法や関数はありますか?
  • 具体的な要件として、条件に応じて<a>タグのURLを書き換え、条件から外れると元のURLに戻す方法を知りたいです。
  • 質問文章の要点は、jQueryを使用して要素の書き換えを行い、書き換え前の状態にリセットする方法についてです。

質問者が選んだベストアンサー

  • ベストアンサー
  • mduk55
  • ベストアンサー率66% (4/6)
回答No.3

そもそもDOM書き換え以前の話しなので、的外れだったら気にしないでくださいね。 jqueryで変数にページのデータをぶちこんじゃうのも手かもしれませんが、 smartyとかサーバー側で切り分けを行うのはダメなのでしょうか? 条件を満たす/満たさないで、リンク先を変えたいなら、smartyみたいなテンプレートエンジン側で、フラグなり変数なりを使って、分岐させればよいのではと思ったりしますが。 そうではくて、jqueryでやりたい場合は、条件を満たした時点でフラグを立てておき、その場合はattr関数なりを使ってリンク先を変えるぐらいしか思いつかないです。 お力になれるかどうか分かりませんが、ご参考になれば幸いです。

suzienuzie
質問者

お礼

ご回答ありがとうございます! サーバ側の方で分岐させる方法もあるんですね。smartyというのはMTを扱ったときにちらっと聞いたことがある程度です。不勉強につき無知でお恥ずかしいです… 今回は私がサーバにインストール等できる立場にないので、やはりattrでhrefの値を取得、再度代入する方向で行くことにしました。 function geturl(){  $("a").each(function (i) {   url[i] = $(this).attr('href');  }); } ↑のような感じで… jQueryというかjavascript自体ほとんどわからず見よう見まねなので、ひどいソースかもしれませんが、とりあえず思ったような挙動をさせることができたので、解決といたします。ありがとうございました。 javascriptを勉強する必要性をひしひしと感じております…

その他の回答 (2)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

最初から、2つ準備しておいて、 ある条件の時のみ表示するように、 スタイル属性を切り替えるってのはだめ...

suzienuzie
質問者

お礼

ご回答ありがとうございます! 運用上の都合で、ちょっとそういったことはできないのです。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

属性値のみにしろ、要素まるまるにしろ、部分的にもとに戻したいなら、 書き換え前の値を自分で保持しておく必用があります。  何か、思いがけない方法ってあるかなあ... ページ全体を読み直すってのは、だめよね。

suzienuzie
質問者

お礼

ご回答ありがとうございます! やはりそうですよね。素直にattrでhref属性を取得することにしました。 全体を読み直すというのがちょっと良くわからないのですが、リロードが発生するのであれば避けたいです。

関連するQ&A