漆黑天使复活
2016-03-10 09:11
采纳率: 71.1%
浏览 1.9k

怎么给JQ生成的元素绑定动作?使用document.ready不行

我的思路是,想使用JQ生成了一个id="test"的元素,然后在用
$document().ready(function(){$("#test").click()})
的方法来绑定动作,但是不行,貌似document.ready,刷新一次才能绑定,但jq生成新的元素因为没有刷新,所以无法绑定?

有什么办法可以做到这个吗?我现在能想是生成test元素的时候,绑定一个onclick动作,但是这样子就是js了,代码要重新写了。。有啥JQ的方法吗?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

8条回答 默认 最新

  • 兔子托尼啊 2016-03-10 09:23
    已采纳
    点赞 打赏 评论
  • baidu_34066826 2016-03-10 09:14

    $("#test").click(function(){

    })

    点赞 打赏 评论
  • baidu_34066826 2016-03-10 09:14

    $("#test").on("click",function(){

    })

    点赞 打赏 评论
  • 夜半无声 2016-03-10 09:15

    你在生成 id 元素后再进行绑定试试!

    点赞 打赏 评论
  • qq_19891827 2016-03-10 09:24

    用jquery的事件委托试下,假设query生成的元素id为test

     $('document').on('click','#test',function(){
            alert('我是回调函数');
     });
    
    点赞 打赏 评论
  • 兔子托尼啊 2016-03-10 09:25
     <!DOCTYPE html>
    <html>
    <head>
    <script src="http://www.w3school.com.cn/jquery/jquery-1.11.1.min.js">
    </script>
    <script>
    $(document).ready(function(){
       var a = 1,
        $_div = $('#test');
        $('input[name=addbtn]').on('click', function () {
            $_div.append('<input type="button" name="test' + a + '" value="按钮' + a + '"/>');
            a++;
        });
    
        //偶数项点击事件
        $_div.on('click', 'input[name^=test]:even', function () {   
            alert('我是有效的on方法,你能看见我吗:' + this.value);
        });
    
        //奇数项绑定的点击事件  发现点击无效,而是用live方法却能够支持
        $('input[name^=test]:odd').on('click', function () {   
            alert('我是无效的on方法,你不能看见我');
        });
    
        //奇数项绑定的点击事件  发现点击无效,而是用live方法却能够支持
        $('input[name^=test]:odd').live('click', function () {
            alert('我是live方法,你能看见我吗:' + this.value);
        });
    });
    </script>
    </head>
    <body>
    <input type="button" name="addbtn" value="按钮添加" />
    <div id="test"></div>
    </body>
    </html>
    
    点赞 打赏 评论
  • qq_19891827 2016-03-10 09:26

    打错了,document的引号去掉

    点赞 打赏 评论
  • 觅夜的黑 2016-03-10 09:28

    我觉得可能是元素没生成,你就要绑定id。

    点赞 打赏 评论

相关推荐 更多相似问题