質問

こんにちは友達私はAjaxが完了したときにページにAjaxを介していくつかのデータを表示しています。

データがajaxを介して来るときにJavaScriptが機能しない理由

ありがとう

$.ajax({
  url: "remote.php?act=ShowContacts&id="+id,
  cache: false,
  success: function(html){
    $("#displaycontacts").html(html);

  }
});

    $("#viewcontact").colorbox({width:"500px", height:"520px", iframe:true});

<a href="viewcontact.php?id=3" id="viewcontact" class="cboxElement">View Details</a>

データがajaxから来て、[oクリック]をクリックすると、colorboxは開いていないが、ajaxなしでこのリンクを配置するときは動作している場合は、[

役に立ちましたか?

解決

Ajaxデータは、.colorbox()イベントハンドラーがAtahcedになった後にロードされる可能性が最も高くなります。 Ajaxコールを完了した後、ColorBoxイベントハンドラーをロードした新しい要素に適用する必要があります。

完了後に.colorbox()メソッドを呼び出すか、 。住む() または.delegate()メソッド。

他のヒント

これを試して:

<script>
    $.ajax({
      url: "remote.php?act=ShowContacts&id="+id,
      cache: false,
      success: function(response){
        $("#displaycontacts").html(response);
      }
    });
    $("body").delegate("a[rel='lightbox']", "click", function (event) {
                        event.preventDefault();
                        $.colorbox({href: $(this).attr("href"),
                               width:"500px",
                               height:"520px",
                               iframe:true});
    });
</script>
<a href="viewcontact.php?id=3" rel='lightbox'>View Details</a>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top