jquery tabs使用ajax问题

发布于 2024-11-30 13:03:16 字数 1860 浏览 1 评论 0原文

这是按钮类型。

<input type="button" name="add_person_to_notify" value="Submit" id="add_person_to_notify">

这是脚本代码。

   <script type="text/javascript">
   $(function(){
           $("#dialog_person_to_notify_form").dialog({
                modal: true,
                width: 'auto',
                autoOpen: false
            });
          $("#add").click(function(){
                $("#dialog_person_to_notify_form").dialog("open");                                     
          });

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

                var data = $('#form_person_to_notify').serialize(); 
                $.post('<?php echo base_url_l(); ?>hr/recruitment_tab/recruitment/person_to_notify_process',data,function(){
                    alert("Person to notify has been added!");  
                    $("#dialog_person_to_notify_form").dialog("close");
                    $('#applicant-view-form-tabs').tabs('load',0);
                }); 
         });                
  });
  </script>

现在我明白了问题所在。一旦重新加载选项卡,该功能就会发生两次。如果第三次重新加载该选项卡。这些功能发生三次,依此类推。谁能帮助我有什么问题吗?我正在使用 AJAX 作为选项卡。

这是我使用选项卡的方式。

    <div class="wrapper-maint">
    <div id="applicant-view-form-tabs" class="main-tab">
        <ul>
            <li><a href="<?= base_url_l() ?>tab1">Budget Management</a></li>
            <li><a href="<?= base_url_l() ?>tab2">Transactions</a></li>
            <li><a href="<?= base_url_l() ?>tab3">Reports</a></li>        
            </ul>
        </div>
</div>
<script type="text/javascript">
$(function(){
    $('#tabs-finance').tabs({

    });
});
</script>

我应该对我的标签做些什么吗?

This is the button type.

<input type="button" name="add_person_to_notify" value="Submit" id="add_person_to_notify">

this is the script code.

   <script type="text/javascript">
   $(function(){
           $("#dialog_person_to_notify_form").dialog({
                modal: true,
                width: 'auto',
                autoOpen: false
            });
          $("#add").click(function(){
                $("#dialog_person_to_notify_form").dialog("open");                                     
          });

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

                var data = $('#form_person_to_notify').serialize(); 
                $.post('<?php echo base_url_l(); ?>hr/recruitment_tab/recruitment/person_to_notify_process',data,function(){
                    alert("Person to notify has been added!");  
                    $("#dialog_person_to_notify_form").dialog("close");
                    $('#applicant-view-form-tabs').tabs('load',0);
                }); 
         });                
  });
  </script>

Now i figured out the problem. once the tab is reloaded, the function happens twice. if the tab is reloaded for the third time. the functions happen three times and so on and so fort. can anyone help me what's the problem? I'm using AJAX for tabs.

Here is how i use the tabs.

    <div class="wrapper-maint">
    <div id="applicant-view-form-tabs" class="main-tab">
        <ul>
            <li><a href="<?= base_url_l() ?>tab1">Budget Management</a></li>
            <li><a href="<?= base_url_l() ?>tab2">Transactions</a></li>
            <li><a href="<?= base_url_l() ?>tab3">Reports</a></li>        
            </ul>
        </div>
</div>
<script type="text/javascript">
$(function(){
    $('#tabs-finance').tabs({

    });
});
</script>

Is there anything i should do with my tabs?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

铁轨上的流浪者 2024-12-07 13:03:16

我在这里看不到完整的图片,但听起来您需要使用取消绑定:

$("#add_person_to_notify").unbind('click').click(function(){
 // ...
});

I don't see the full picture here but sounds like you need to use unbind:

$("#add_person_to_notify").unbind('click').click(function(){
 // ...
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文