开发者社区> 问答> 正文

如何让ajax里的success只执行一次。

$('#btn-file').button().click(function(){
        $.ajax({
            url : 'php/file.php',    
            dataType : 'json',
            success : function(data){
                var id;             
                $.each(data, function(i,item) {                 
                    $('<dd>').attr('id',item).html(item).appendTo("#file dl");
                    $('dd').click(function(){
                        $(this).addClass('current').siblings('dd').removeClass('current');
                        id = $(this).attr('id');
           });
       });   
                $('#file').dialog({            
                    width : 610,
                    height : 500,
                    resizable : false,
                    modal : true,   
                    closeText : '关闭',
                    buttons: [
                        {
                            text: "确认",
                            click: function() {
                              $("#file-name span").remove();
                              $('#file-name').html(id);
                              $('#product_file').attr('value',id);
                                  $(this).dialog("close");
                            }
                        },
                        {
                            text: "取消",
                            click: function() {
                                $(this).dialog("close");
                            }
                        }
                    ],         
                });   
            }        
       });  
    });

展开
收起
a123456678 2016-07-12 15:14:06 2171 0
1 条回答
写回答
取消 提交回答
  • success本来就只执行一次,但是里面的forEach相当于循环了,要停掉这个return false;

    2019-07-17 19:55:00
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载