Jqgrid 使用optgroup时,select2不会自动选择

Jqgrid 使用optgroup时,select2不会自动选择,jqgrid,jquery-select2,jquery-select2-4,Jqgrid,Jquery Select2,Jquery Select2 4,我将select2与jqgrid一起使用。 有些工作不正常,这是我编辑行时出现的情况 无OPTGROUP 不带optgroup的标准选择(无选择2):选择将显示所选项目(我正在编辑的项目) select2不带optgroup:select将显示所选项目(我正在编辑的项目) 带OPTGROUP 带有optgroup的标准选择(无选择2):选择将显示所选项目(我正在编辑的项目) select2 with optgroup:select将不显示所选项目(我正在编辑的项目),但当我打开它时,它将聚焦所选

我将select2与jqgrid一起使用。 有些工作不正常,这是我编辑行时出现的情况

无OPTGROUP

  • 不带optgroup的标准选择(无选择2):选择将显示所选项目(我正在编辑的项目)
  • select2不带optgroup:select将显示所选项目(我正在编辑的项目)
  • 带OPTGROUP

  • 带有optgroup的标准选择(无选择2):选择将显示所选项目(我正在编辑的项目)
  • select2 with optgroup:select将不显示所选项目(我正在编辑的项目),但当我打开它时,它将聚焦所选项目
  • 如你所见,2号有效,我的问题是4号。是虫子还是我遗漏了什么

    谢谢,,
    Lorenzo

    不确定要搜索什么,但导航行时的问题是

    在您的情况下,我已经测试了以下代码:

    $('#grid'). jqGrid('navGrid', pager, {params},
    ...
      {  // edit params
         { afterclickPgButtons : function(button, form, id ) { 
            $("#name").trigger('change.select2');
         },...
      }
    );
    
    注意上面链接的区别

    已更新

    为了解决这个问题,您需要在dataInit函数中使用setTimeout。请尝试以下设置之一:

    {
          name: "name",
          index: "name",
          autosize: true,
          searchoptions:{clearSearch:false},
          width:200,
          editable:true,          
          edittype: 'select', 
          editoptions: {         
            // Simulo la risposta di una chiamata
            // Per funzionare deve esistere più sotto 
            // ajaxSelectOptions
            dataUrl:'/echo/html/',
            postData: {
                          html: serverResponce
                      }, 
            //            
            dataInit: function(element) { 
            setTimeout(function(){
                  $(element).select2({
                    allowClear: false,
                    // Imposto il tema bootstrap
                    theme: "bootstrap4",
                    dropdownAutoWidth : true,
                            width: 'auto',                  
                    placeholder: 'Search...'
                  });
              }, 500);
                }
          }
       }
    

    我希望首先有一个optgroup的演示

    ——最好知道使用了哪个版本的jqGrid?-其次,如果没有任何代码来演示问题,那么很难获得帮助。很抱歉我使用的是最新的jqgrid和最新的select2。我创建了一个JSFIDLE,我想这个问题不会发生,因为我没有使用ajax和mysql创建select2。如何在JSFIDLE上模拟它?不管怎样,如果你检查一下,我发现了另一个问题。使用标准选择,我可以编辑和更改行,选择将自动更新。使用select2更改行时,它不会更新。您可以在这里取消对第111-120行的注释:如果您知道如何在JSFIDLE上模拟ajax和mysql,我可以为jqgrid select2更新该站点的演示(stackoverflow)serach,您将发现一个非常有用的帖子和解决方案。我每天都使用该站点,但我没有找到任何关于我的问题的解决方案,这就是我在这里写作的原因。我知道如何将jqgrid与select2一起使用,当将select2与optgroup一起使用时,我遇到了一个特定的问题,我编辑了一个jqgrid行。好的,谢谢。我将尝试制作一个演示,但首先我必须了解如何使用JSFIDLE模拟mysql调用,因为问题似乎就在这里。我会给你更新的你好,我终于做到了。下面是更新的演示:你好,托尼。好的,超时就行了。它不太好看,因为当它用select2更改select时会闪烁,但它可以工作。有办法解决吗?非常感谢。我没有测试它,但您可以尝试使用自定义元素。更多-请参阅edittype:“自定义”