SuityeCRM - jQuery 代码无法在 Chrome 上运行

SuityeCRM - jQuery Code not working On Chrome

 $("#subpanel_title_documents").click(function(){
    alert("clicked");

        alert("loaded");
        $("#documents_cases_create_button").click(function(){
            alert("clicked");
             setTimeout(function(){console.log("undefined");},1000);
             alert("test");
             setTimeout(function(){
                if($("#account_id").attr("data-id-value") != ""){
                    alert("account");
                    setTimeout(function(){
                        var idAccount = $("#account_id").attr("data-id-value");
                        var nAccount = $("#account_id").text();

                        alert(idAccount);
                        alert(nAccount);

                         $("#account_id_c").val(idAccount);
                         $("#accounts_c").val(nAccount);
                    },500);


                }else{
                    $("#subpanel_title_contacts").click();
                        alert("subpanel open");
                        setTimeout(function(){
                                    var idcontact = $("*[data-module='Contacts']").data("record-id");
                                    var nomecontact = $("*[data-module='Contacts']").data("module-name");

                                    alert(idcontact);
                                    alert(nomecontact);

                                    $("#contact_id_c").val(idcontact);
                                    $("#contacts_c").val(nomecontact);
                                    $("#Documents_subpanel_full_form_button").click();
                        },1500);
                };
            },1000);
        });

});

我正在尝试在一些操作后填充 SuiteCRM 上的一些字段。 此代码在 Mozilla Firefox 上运行良好,但在 Google Chrome 上运行不佳。在第二个警报 ( alert("loaded") ) 停止在 Chrome 上工作。 任何人都可以理解问题是什么吗?

您应该包括更多详细信息,例如 module/detail view/edit vew/popup 您在尝试这个吗?

例如在帐户模块中这个 ID documents_cases_create_button 不存在。

此外,我还没有在 SuiteCRM 官方回购中找到这个 documents_cases_create_button 存在的证据。

如果您要定制,请注明。

此外,如果您使用 AJAX 加载内容,并且 AJAX 在单击 $("#subpanel_title_documents").click(function(){ 的同时执行,那么 DOM 对象 documents_cases_create_button 可能还没有。

如果您不知道,请在设置此侦听器之前设置超时

 $("#subpanel_title_documents").click(function(){
    console.log("Documents Clicked")
    setTimeout(function(){
       console.log("Just waited 3 secs for dom to finish loading AJAX content")
       $("#documents_cases_create_button").click(function(){
           console.log("I finally got the event I wanted");
       })
    },3000);
  })

如果那是问题所在,那么您的选择是设置某种观察者。 (这就是我在没有本机回调时对 AJAX 加载的内容所做的)。