开发者社区 问答 正文

出现点击一次按钮,提交多次数据的情况,第1次正常,第2次提交2次,第3次3次..........

function add(){
    $('#winAdd').window('open');  // 打开增加窗体        
    $("#btnAdd").click(function(){
        var status = $('#statusAdd').combobox('getValue');    //状态
        var menuAdd =$('#menuAdd').combobox('getValue');    //父菜单

        if(menuAdd=="添加为父菜单"){
            menuAdd="0";
        }
        $.ajax({
           url:"addMenuAction",
           data:{
               "m.mid":$("#idAdd").val(),
               "m.mname":$("#nameAdd").val(),
               "m.mhref":$("#mhref").val(),
               "m.mpid":menuAdd,
               "m.mstatus":status
           },
           type:"POST",
           success:function(result){
               $.messager.show({
                    title:result,
                    msg:'消息将在5秒后关闭。',
                    timeout:5000,
                    showType:'slide'
               });  
               //关闭修改窗口
               $('#winAdd').window('close');
               $("#bg").datagrid('reload');
           },
           error:function(){
                $.messager.alert('警告','操作错误');
           }
        });
    });
}
<a id="btnAdd" href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-ok'">新增</a>         

展开
收起
小旋风柴进 2016-03-23 08:35:31 3130 分享 版权
1 条回答
写回答
取消 提交回答
  • 很简单 ,原因是你每次执行add方法时 ,都给btnAdd绑定了一个 click事件。
    解决方式如下两种方式
    1,每次执行add时先$('#btnAdd').unbind('click');解绑原有的click事件。
    2,把绑定的事件放在$(function(){})中加载完成只绑一次

    2019-07-17 19:10:12
    赞同 展开评论
问答分类:
问答地址: