2014-05-06 54 views
0

我正在使用Kendo UI,并且我想在按钮单击时使模式对话框弹出。然而,它第一次正常工作,但是当我关闭对话框并再次单击打开按钮屏幕淡入淡出,但窗口非常小,宽度和高度像素很少。Kendo UI对话框重新打开

这是我的代码:

<div id="progressDialog"> 
     <p> 
     blah blah 
     </p> 
    </div> 

    <script> 
    $(document).ready(function() { 
     var dlg = $("#progressDialog").kendoWindow({ 
     actions: ["Custom", "Pin", "Refresh", "Maximize", "Minimize", "Close"], 
     draggable: false, 
     height: "300px", 
     modal: true, 
     pinned: false, 
     position: { 
      top: 100, 
      left: 100 
     }, 
     resizable: false, 
     title: "Modal Window", 
     width: "500px" 
     }); 

     $("#someGrid").kendoGrid({ 
     ... 
     dataBound: function(e){  
      $("#showButton").unbind('click').click(function(){   
      dlg.data("kendoWindow").open(); 
      } 
     } 
     ... 
     }); 
    }); 
    </script> 

这$( “#showButton”)的部分是kendoGrid在数据绑定事件初始化内,如果这是非常重要的。网页上还有其他的窗口,所以也许会有一些碰撞,idk ...但是它第一次showButton被点击时正常工作,但是当我关闭模式并尝试第二次时,它显示非常非常小的正方形。

编辑:只是注意到有内联CSS样式中的此属性添加:transform:scale(0.01)。我可以用JavaScript删除它,但为什么要添加?

+0

根据Telerik的,这是已知的bug与jQuery 1.7,1.8将解决这个问题。这是真的,但1.8会破坏其余的遗留代码。 – Dexa

+0

您使用的是哪个版本的Kendo UI?最新版本使用jQuery的更新版本,因此不确定是否由遗留代码_rest代表您的代码或KendoUI代码。如果你的意思是KendoUI,我会建议移动到一个更新的(最新的)版本,不应该有任何问题运行一个新的jQuery。 – OnaBai

+0

我使用的是v2012.3.1114。我意识到这是非常过时的版本,现在只是重构所有内容并不是一种选择。感谢您的帮助我通过设置** transform:scale(1)**来使用jQuery来完成模式窗口。 – Dexa

回答

0

您可能需要刷新模式。试试这个:

$("#yourmodalWindow").data("kendoWindow").refresh(parameters); 

更多信息here

好运