用ajax创建的带有jquery的元素

justRadyko

我在处理以下问题时遇到困难。

我有一个页面,其中列出了某些用户当前关注的人。在同一页面中,还有一个字段用于搜索新联系人。使用AJAX,此搜索的结果将显示在已跟踪联系人的同一位置。

两种类型的人(已经关注一次,并且由AJAX返回一次)都有关注/取消关注按钮。

问题是此按钮不适用于AJAX返回的联系人。

这是处理此问题的部分代码:

$(document).ready(function (){   
    // ---------- contact search --------------
    $("#searchContacts").keyup(function(event){
        if (event.keyCode == 13){
            document.getElementById('fillText').innerHTML = "";
            var searchValue = $("#searchContacts").val();
            var userID = $("#userID").text();
            if (searchValue != ""){
                if (window.XMLHttpRequest){
                    xmlhttp = new XMLHttpRequest();
                } else {
                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
                }
                xmlhttp.onreadystatechange = function(){
                    if (xmlhttp.readyState==4 && xmlhttp.status == 200){
                        document.getElementById('fillText').innerHTML = xmlhttp.responseText;
                    }
                }
                xmlhttp.open("GET","searchContacts_server.php?contact="+searchValue+"&userID="+userID,true);
                xmlhttp.send();
            }
        }
    });

    // ---------- follow user -------
    $(".followButton").click(function(){
        var userIDToFollow = $(this).attr('name'); 
        var userID = $("#userID").text();  // getting userId from hidden filed on the page

        if (window.XMLHttpRequest){
            xmlhttpAdd = new XMLHttpRequest();
        } else {
            xmlhttpAdd = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttpAdd.onreadystatechange = function(){
            if (xmlhttpAdd.readyState==4 && xmlhttpAdd.status == 200){
                $("input[name='"+userIDToFollow+"']").val('Following');
            }
        }
        xmlhttpAdd.open("GET","followContacts_server.php?userIDToFollow="+userIDToFollow+"&userID="+userID,true);
        xmlhttpAdd.send();
    });
}); 
彼得·卡

使用事件委托,以便事件委托AJAX也可以工作:

改变:

$(".followButton").click(function(){

到:

$(document).on("click", ".followButton", function(){

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有jQuery的Ajax更新元素

来自分类Dev

用jQuery / AJAX替换Div内容-带有按钮ID

来自分类Dev

jQuery AJAX创建带有父子功能的select

来自分类Dev

可以在jQuery中创建带有分页的ajax表吗?

来自分类Dev

用jQuery创建元素

来自分类Dev

用jQuery创建HTML元素

来自分类Dev

用Jquery清除DIV,除了带有一个子元素的元素

来自分类Dev

带有jQuery的Wrapp元素?

来自分类Dev

如何使用jquery在元素上创建带有条件类的元素?

来自分类Dev

带有jsonp的jQuery Ajax

来自分类Dev

带有设置元素的列表创建

来自分类Dev

创建带有元素/div 的轮播?

来自分类Dev

带有后退按钮的 jquery 多级菜单 - 创建多个后退按钮元素

来自分类Dev

带有jQuery Ajax的laravel用值填充选择选项

来自分类Dev

带有锚元素的jQuery mailto

来自分类Dev

jQuery:删除带有内容的先前元素

来自分类Dev

jQuery,带有URL数组的$ .ajax

来自分类Dev

带有间隔的jQuery AJAX

来自分类Dev

带有Web API的Ajax Jquery请求

来自分类Dev

带有间隔的jQuery AJAX

来自分类Dev

带有AJAX请求的JSON的jQuery Progressbar

来自分类Dev

带有jquery和XML的AJAX

来自分类Dev

带有ID的jQuery ajax上传文件

来自分类Dev

带有JQUERY的AJAX POST请求

来自分类Dev

带有jQuery Promise的链式ajax请求

来自分类Dev

带有 symfony3 的 Ajax Jquery

来自分类Dev

带有 jquery .append 的多个异步 AJAX

来自分类Dev

带有ajax的jQuery.each()目标元素始终以循环中的最后一项为目标

来自分类Dev

使用(jQuery)从ajax响应中的li标签中选择带有箭头键(向上和向下)的li元素