0

サイトでナビゲーションに ajax を使用していますが、ページのスクリプト タグに問題があります。(私のアプリはRailsアプリですが、違いはないと思います)

たとえば、ページにボタンがあります。

<button id="alert">click here</button>

そして一番下に:

<script>
    $("#alert").click(function() {
        alert("hi there")}
    );
</script>

初めてページにアクセスすると、ボタンは正常に機能します。次に、自分の Ajax サイトのいくつかのリンクをクリックして、Ajax で呼び出されたページに戻りましたが、機能しなくなりました。「Ajaxはタグを剥ぎ取る」とか以前に聞いたことがありますが、解決策が思い浮かびません。

うまくいくでしょうかeval()?それができるかもしれないと聞いた。どのように実装しますか?私はこれに何日も取り組んできましたが、簡単な回避策がないのは奇妙に思えます。

4

1 に答える 1

4

イベントを委任する

$(document).on('click', "#alert",function()
      {alert("hi there")}
 });

理想的には、イベントを Document にバインドしない方がよいでしょう。イベントを可能な限り最も近い静的要素にバインドしてみてください。

于 2013-05-18T01:29:00.963 に答える