首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ajax中的jQuery函数

ajax中的jQuery函数
EN

Stack Overflow用户
提问于 2016-10-14 16:37:08
回答 6查看 87关注 0票数 0

我使用jQuery有一段时间了,但这是我第一次需要创建自己的函数。(我使用的是noConflict)

我有一个代码是这样工作的:

代码语言:javascript
复制
jQuery(function()
    {
        jQuery("#tabs-3").dynatree({
            checkbox: true,
            onActivate: function(dtnode) {
                alert("You activated " + dtnode);
            }
        });

        //etendre tt les noeuds
        jQuery("#tabs-3").dynatree("getRoot").visit(function(dtnode){
                dtnode.expand(true);
            });
    });

上面的代码正在工作,但是,这部分代码是在ajax调用中,当我第一次调用它时,它是有效的,但不是第二次或以后。当我用一个函数调用它时,它会给出错误"jQuery.mytree不是一个函数“。那么我的代码中到底出了什么问题。请帮帮我。

代码语言:javascript
复制
(function(jQuery){
        jQuery.fn.extend({
            mytree: function (mytreename) 
            {
            alert(mytreename);
                jQuery(mytreename).dynatree({
                    checkbox: true,
                    onActivate: function(dtnode) {
                        alert("You activated " + dtnode);
                    }
                });
            }
        });
        jQuery.mytree('#tabs-3');
    })(jQuery);

谢谢!

EN

回答 6

Stack Overflow用户

发布于 2016-10-14 16:53:06

这是因为当你使用jQuery.fn.extend时,它会扩展你的选择器。

例如:

代码语言:javascript
复制
<div id = "tabs-3"></div>
<script type="text/javascript">

    (function(jQuery){
        jQuery.fn.extend({
            mytree: function mytree() {
                console.log("My tree ", this.attr("id"));
                // Do your cool AJAX calls 
            }
        });
        jQuery("#tabs-3").mytree();
    })(jQuery);

</script>

都会起作用的。在mytree()中,这是选择器的结果。

票数 1
EN

Stack Overflow用户

发布于 2016-10-14 16:58:48

你得打个电话,

代码语言:javascript
复制
jQuery("#tabs-3").mytree();
票数 0
EN

Stack Overflow用户

发布于 2016-10-14 17:10:08

如果我遇到了下一个问题,因为我的结构,我相信。函数在php中,让我们称其为1.php。

1.php在ajax中的调用2.php

2.php包含一个在

  • ...(此部分起作用)。在2.php中,我调用mytree,我没有得到任何错误和日志工作。但是dynatree不起作用。

jQuery.fn.extend({ mytree: function mytree() { console.log("My tree ",this.attr("id"));jQuery(this.attr("id")).dynatree({ checkbox: true,onActivate: function(dtnode) { alert("You activated“+ dtnode);} });} });

有什么办法能让它工作吗?

谢谢!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40038670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档