如何使kendo ui网格过滤器编辑器在jquery ui对话框中工作

时间:2013-07-18 22:06:46

标签: kendo-ui

看来剑道2013.2.716和jquery ui 1.10.3之间存在冲突。如果我在jquery ui对话框中有一个kendo网格,我无法将光标放在过滤器编辑器内的文本框中。我已经创建了一个jsBin来演示这个问题。

http://jsbin.com/itehom/14/edit

回购步骤

  1. 点击“将网格拉入对话框”
  2. 点击任意列上的过滤器图标
  3. 尝试将鼠标放在过滤器编辑器内的文本字段中。

3 个答案:

答案 0 :(得分:1)

为jQuery对话框设置模态:false

答案 1 :(得分:0)

尝试以下

$('#myModal').on('shown', function() {
    $(document).off('focusin.modal');
});

答案 2 :(得分:0)

如果您使用jquery对话框而不是Bootstrap模式,Varde的脚本可能无法解决您的问题。我在这上花了几个小时。然后我注意到在打开jquery对话框后可以添加以下行,它解决了问题。

$(document).off('focusin');

您可能已经注意到,该事件不包含命名空间。请记住,这可能会关闭更多" focusin"您希望关闭的事件处理程序。我检查了jquery UI源代码,但没有找到命名空间,不确定他们是否使用了命名空间。

我的原型的整个代码块就像:

<button id="opener">Open Dialog</button>
<div class="row" id="viewSearchResults">
    blah, blah, ...
</div>

<script>
    $(function () {
        $("#viewSearchResults").dialog({
            autoOpen: false,
            modal: true,
            minWidth: 700
        });
        $("#opener").click(function () {
            $("#viewSearchResults").dialog("open");
            $(document).off('focusin');
        });
    });
</script>

希望以上可以节省一些开发人员的时间。感谢。