ajaxLink和jQuery的多个实例

时间:2013-03-29 19:34:28

标签: ajax zend-framework jquery

我在Zend-Framework工作。我的布局是这样的:

<html>
    <head>
        <script>
            function myBeforeSendCallbackJsFunc() {$('#content-loading').show();}
            function myCompleteCallbackJsFunc() {$('#content-loading').hide();}
        </script>
    </head>
    <body>
        <div id="menu">
            <?php
            echo $this->ajaxLink("<li>MENU 1</li>", '/controllertest/actionindex', array('update' => '#content', 'beforeSend' => 'myBeforeSendCallbackJsFunc();', 'complete' => 'myCompleteCallbackJsFunc()'), array('format' => 'ajax'));
            ?>
        </div>
        <div id="content">
        </div>
        <?php echo $this->jQuery()->enable()->uiEnable(); ?>
    </body>
</html>

在这种情况下,ajaxLink功能完美运行。 我触发MENU 1,'#content'获取'/ controllertest / actionindex'内容。 但是如果在'/ controllertest / actionindex'中存在ajaxLink函数,它只有在我再次包含时才有效:

<?php echo $this->jQuery()->enable()->uiEnable(); ?>

为什么?

1 个答案:

答案 0 :(得分:0)

当通过ajax在一些包含中重复调用AjaxLink助手时,我生成了这个助手创建的ajax函数的多个实例。

异步调用时,AjaxLink会造成混淆。

解决方案:不要使用AjaxLink,并创建一个全局且唯一的ajax函数。