当我尝试将表格设置为干净时,脏表格显示错误

亚当·马斯特斯

我正在尝试监视一个表单,以查看该表单何时变为“脏”(更改),以便随后启用“保存更改”按钮。这很简单。在$(document).ready()部分中,我在表单上启用dirtyForms。

$(".dirtyForm").dirtyForms();

然后,我从ajax调用中加载表单,并在同一函数内将其设置为clean,然后开始调用函数以检查其是否脏了。

$(".dirtyForm").dirtyForms("setClean");
constant = setInterval(function(){checkDirty()}, 500);

这是我的功能,以检查何时变脏。顺便说一句,如果有人知道做这部分的更好方法,请告诉我。

function checkDirty(){
    if ($.DirtyForms.isDirty()){
        $(".saveDirtyForm").removeAttr("disabled");
            $(".resetDirtyForm").removeAttr("disabled");
            console.log("Dirty...");
            clearTimeout(constant);
    }
}

您会注意到,在checkDirty函数中,它具有clearTimeout(constant)来阻止函数在表单变脏后继续重复。至此,一切工作正常。这些按钮将保持禁用状态,直到我进行更改,然后几乎立即变为启用状态。问题出在我想起ajax函数以向表单加载更多信息时。重置表单时,将其设置为clean时会出现错误。它说,

Uncaught TypeError: Object function ( selector, context ) {
    // The jQuery object is actually just the init constructor 'enhanced'
    return new jQuery.fn.init( selector, context, rootjQuery );
} has no method 'facebox'

此错误在jquery.dirtyForms.js文件中。它不会将表单设置为清除并再次启动监视功能。有人知道我在做什么错吗?

这是zeroflagL在询问的功能。

        function getOrderDets(id){
        $.ajax({
            url: DONEP+"blueBlob/donors/"+donorID+"/orders/"+id,
            type: "GET",
            dataType: "json",
            success: function(data){
                console.log(data);
                dataSec = data.main.aResultData[0];
                //Clear Fields
                $("#orderIdTag").text('');
                $("#orderNum").val('');
                $("#doPlaced").val('');
                $("#doShip").val('');
                $("#dTrack").val('');
                $("#doNote").val('');
                //Set Main fields
                $("#orderIdTag").text(dataSec.OrderID);
                $("#orderNum").val(dataSec.OrderNumber);
                $("#doPlaced").val(dataSec.OrderDate);
                $("#doShip").val(dataSec.ShipDate);
                $("#dTrack").val(dataSec.TrackingNumber);
                $("#doNote").val(dataSec.OrderNote);
                //Clean Dirty Form
                $(".dirtyForm").dirtyForms("setClean");
                constant = setInterval(function(){checkDirty()}, 500);
                //Set Table
                $(".orderDetTable").dataTable({
                    aaData: data.array,
                    "bAutoWidth": false,
                    "bDestroy": true,
                    "aoColumnDefs" : [
                        {"sWidth" : "13%", "sTitle" : "Quantity", "mData" : "Quantity", aTargets : [0]},
                        {"sTitle" : "Code", "mData" : "Code", aTargets : [1]},
                        {"sTitle" : "Amount", "mData" : "Amount", aTargets : [2]},
                        {"sWidth" : "6%", "sTitle" : "", "mData" : "OrderDetailsID", aTargets : [3], "mRender" : function(data, type, full){
                            return "<a href='#'><i class='glyphicon glyphicon-pencil orderDetEdit' id='"+data+"'></i></a>";
                        }}
                    ]
                });
            }
        });
    }

这是facebox调用的堆栈跟踪。

$.facebox@http://dev.mysite.info/details.php?id=63#:540
.DirtyForms.dialog.fire@http://dev.mysite.info/assets/js/jquery.dirtyforms.js:25
bindFn@http://dev.mysite.info/assets/js/jquery.dirtyforms.js:421
aBindFn@http://dev.mysite.info/assets/js/jquery.dirtyforms.js:311
jQuery.event.dispatch@http://dev.mysite.info/assets/js/jquery.js:5095
jQuery.event.add/elemData.handle@http://dev.mysite.info/assets/js/jquery.js:4766
柔和的

第一步是setClean在更改包括数据表在内的表格中的任何内容后调用


如果只是错误,那么这里有一个hack。如果您在最后期限之内,这将为您提供帮助,还可以帮助您调试:

if ( typeof $.facebox !== 'function' )
{
    $.facebox = function(){
        var console = window['console'];
        if ( console && console.error ){
            console.error( 'Warning: $.facebox() was called', arguments );
        }
        return $();
    }
}

另一个提示:如果您多次包含同一个jQuery库,则您的插件可能无法正常工作。

为了解决这个问题,请使用以下魔术在代码库中搜索所有jquery实例:

grep -o 'jquery:[^"]*"1\....' -R *

这将搜索jQuery.fn.version字符串。


您还需要检查插件是否正常工作。尝试检查以下内容:


编辑:要获取堆栈跟踪以查看正在调用facebox函数:

$.facebox = function(){
    alert( new Error().stack );
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当我尝试将JSON OBJ转换为数组时,我想使用JSON以表格式显示数据

来自分类Dev

将表格设置为原始状态时消除字段错误

来自分类Dev

当我将端口设置为环境变量时,Docker compose显示无效的端口错误

来自分类Dev

将<button>的显示设置为表格单元

来自分类Dev

当我将鼠标悬停在表格行上时,如何显示div中表格的图像?

来自分类Dev

当我将表格导出为CSV时,Informix'UNLOAD TO'会生成反斜杠

来自分类Dev

猫鼬无法将“”的属性设置为undefined,每当我尝试创建新条目时。

来自分类Dev

将焦点设置为表格

来自分类Dev

当我们尝试将timeInterval <0.1秒设置为计时器时,模拟器是否存在错误?

来自分类Dev

当我尝试通知某事时为空错误

来自分类Dev

当我尝试显示每个帖子的评论时出现错误

来自分类Dev

Angular 4 - 将 json 数据显示为表格时出错

来自分类Dev

当我将“ runValidators”设置为“ true”时,findByIdAndUpdate导致“验证失败”错误

来自分类Dev

当我将暗淡的长度设置为零时,为什么不会引起错误?

来自分类Dev

找不到对象!当我尝试汇总表格时出现错误,该错误将不会发送至该地址

来自分类Dev

在炭烬数据模型中,当我们修改“ belongsTo”属性时,其状态未设置为脏

来自分类Dev

在余烬数据模型中,当我们修改“ belongsTo”属性时,其状态未设置为脏

来自分类Dev

当我尝试创建设置为发送者的变量UITableViewCell时,prepareForSegue中出现错误

来自分类Dev

当我尝试将端口3000用于HTTP并将端口443用于HTTPS时,它显示错误错误:绑定EACCES

来自分类Dev

当我尝试设置gcp服务帐户时,gitlab ci / cd作业显示错误(无法读取json文件)

来自分类Dev

当我点击提交表格时,我得到了这个错误

来自分类Dev

如何修复我的 [HY093] 错误。它发生了,当我发送表格时

来自分类Dev

尝试抓取表格时出现错误

来自分类Dev

当我尝试将结构中的char *类型的元素设置为特定字符串时,C程序崩溃?

来自分类Dev

Gridview不显示数据(当我运行程序时,表格为空白)

来自分类Dev

当我将目标设置为另存为 PDF 时 window.print() 不会显示更多设置

来自分类Dev

仅在触摸时将反应钩形设置为脏

来自分类Dev

当我从Wordpress发送AJAX联系表格时,电子邮件数据为空

来自分类Dev

当我在蜂巢中创建表格时,地图字段中的值为空

Related 相关文章

  1. 1

    当我尝试将JSON OBJ转换为数组时,我想使用JSON以表格式显示数据

  2. 2

    将表格设置为原始状态时消除字段错误

  3. 3

    当我将端口设置为环境变量时,Docker compose显示无效的端口错误

  4. 4

    将<button>的显示设置为表格单元

  5. 5

    当我将鼠标悬停在表格行上时,如何显示div中表格的图像?

  6. 6

    当我将表格导出为CSV时,Informix'UNLOAD TO'会生成反斜杠

  7. 7

    猫鼬无法将“”的属性设置为undefined,每当我尝试创建新条目时。

  8. 8

    将焦点设置为表格

  9. 9

    当我们尝试将timeInterval <0.1秒设置为计时器时,模拟器是否存在错误?

  10. 10

    当我尝试通知某事时为空错误

  11. 11

    当我尝试显示每个帖子的评论时出现错误

  12. 12

    Angular 4 - 将 json 数据显示为表格时出错

  13. 13

    当我将“ runValidators”设置为“ true”时,findByIdAndUpdate导致“验证失败”错误

  14. 14

    当我将暗淡的长度设置为零时,为什么不会引起错误?

  15. 15

    找不到对象!当我尝试汇总表格时出现错误,该错误将不会发送至该地址

  16. 16

    在炭烬数据模型中,当我们修改“ belongsTo”属性时,其状态未设置为脏

  17. 17

    在余烬数据模型中,当我们修改“ belongsTo”属性时,其状态未设置为脏

  18. 18

    当我尝试创建设置为发送者的变量UITableViewCell时,prepareForSegue中出现错误

  19. 19

    当我尝试将端口3000用于HTTP并将端口443用于HTTPS时,它显示错误错误:绑定EACCES

  20. 20

    当我尝试设置gcp服务帐户时,gitlab ci / cd作业显示错误(无法读取json文件)

  21. 21

    当我点击提交表格时,我得到了这个错误

  22. 22

    如何修复我的 [HY093] 错误。它发生了,当我发送表格时

  23. 23

    尝试抓取表格时出现错误

  24. 24

    当我尝试将结构中的char *类型的元素设置为特定字符串时,C程序崩溃?

  25. 25

    Gridview不显示数据(当我运行程序时,表格为空白)

  26. 26

    当我将目标设置为另存为 PDF 时 window.print() 不会显示更多设置

  27. 27

    仅在触摸时将反应钩形设置为脏

  28. 28

    当我从Wordpress发送AJAX联系表格时,电子邮件数据为空

  29. 29

    当我在蜂巢中创建表格时,地图字段中的值为空

热门标签

归档