2

私はmysqlから供給されたいくつかのコンテンツを持っています.クリックするとalert()が発生するはずですが、これは機能していません.

これは、php/get_answers.php から供給されるコードの私のコードです。

<?php session_start(); ?>
<?php require_once("../includes/include_all.php"); ?>
<?php $answers = $question->get_answers_for_question($_GET['id']); ?>
<?php while($row = $answers->fetch_array()){ ?>
  <!-- ALL ANSWERS HERE -->
  <div class = 'answer-row'>
    <div class = 'answer-side'>
        <div class = 'arrow-contain-answer' type = 'answer' id = 'arrow-up' answer-id = '<?php echo $row["id"]; ?>'></div>
        <div class = 'answer-votes-contain'>
            <?php echo $row['popularity']; ?>
        </div>
        <div class = 'arrow-contain-answer' id = 'arrow-down'answer-id = '<?php echo $row["id"]; ?>'></div>
      </div>

    <div class = 'answer-content'>
      <?php 
        echo $row['content'];
      ?>
    </div>

    <div class = 'actions'>
        <a href = '#' class= 'add-comment' id = '<?php echo $row["id"]; ?>'> add comment </a>
    </div>

  </div>

<?php } ?>

そして、これが表示されているページのjqueryです:

$(".arrow-contain-answer").click(function(){
    alert();
});

私がしたいのは、誰かが「arrow-contain-answer」のクラスを持つ要素をクリックすると、イベントが発生することです..

要素が mysql/php を介してページに「供給」されているときに、以前に問題があったと思います。

4

2 に答える 2

4
$(document).on("click", ".arrow-contain-answer", function(){
    alert();
});

動的に追加された要素については、この方法を試してください!

于 2013-04-04T08:08:17.507 に答える
1

動的フィード要素が追加されたときにドキュメントに存在する最も近い静的要素(親)で委任すると、(パフォーマンス的に)さらに良くなります。

$('.answer-row').on("click", ".arrow-contain-answer", function(){
  alert('clicked');
});

委任されたイベントの詳細を読む

于 2013-04-04T08:14:20.723 に答える