jqGrid 内联编辑:自动完成列的奇怪行为

2024-03-30

我有一个带有自动完成列的 jqGrid (使用内联编辑)。当用户从自动完成列中选择一个值时,事件处理程序会在另一列上设置一个值,并将自动完成列上的值设置为除label从自动完成源返回。两列定义(完整jsFiddle http://jsfiddle.net/syltech/27dLM/37/示例在这里):

{
    name: 'cartoonId',
    index: 'cartoonId',
    width: 90,
    editable: false},
{
    name: 'cartoon',
    index: 'cartoon',
    width: 200,
    editable: true,
    edittype: 'text',
    editoptions: {
        dataInit: function(elem) {
            $(elem).autocomplete({
                source: autocompleteSource,
                select: function(event, ui){
                    var rowId = $("#inlineGrid").jqGrid('getGridParam', 'selrow');
                    if(ui.item){
                        $("#inlineGrid").jqGrid('setCell', rowId, 'cartoonId', ui.item.CartoonId);
                        $("#inlineGrid").jqGrid('setCell', rowId, 'cartoon', ui.item.Name);                            
                    }
                    return false;
                }
            });
        }
    }},

问题是,每当用户从自动完成中选择一个值时,无论是通过单击它还是使用箭头并按 Tab 键,该单元格都不再可编辑,并且网格似乎完全失去焦点。如果我注释掉设置的行cartoon单元格值,它表现正常。有什么办法可以解决这种行为吗?我需要整行保持编辑模式,包括cartoon列,直到用户完成编辑。

jqGrid 4.4.1
jQuery 1.7.2
jQuery 用户界面 1.8.18


你应该重命名Name的物品的属性autocompleteSource to value因为 jQuery UI 自动完成会检查label and value默认情况下(参见文档 http://docs.jquery.com/UI/Autocomplete#overview).

你不能使用setCell of the 'cartoon'当前处于编辑模式的列。你应该删除return false; from select回调也。所以代码可能看起来如下

dataInit: function (elem) {
    $(elem).autocomplete({
        source: autocompleteSource,
        select: function (event, ui) {
            var rowId = $("#inlineGrid").jqGrid('getGridParam', 'selrow');
            if (ui.item) {
                $("#inlineGrid").jqGrid('setCell', rowId, 'cartoonId',
                    ui.item.CartoonId);
            }
        }
    });
}

See http://jsfiddle.net/27dLM/38/ http://jsfiddle.net/27dLM/38/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jqGrid 内联编辑:自动完成列的奇怪行为 的相关文章

  • RichFaces 应用程序,我应该使用 rich:dataTable 还是 jQGrid,优缺点吗?

    继从here https stackoverflow com questions 3899649 ok to wrap jsf components generated html with own divs using jquery aft
  • jqGrid 按列名排序索引

    简单的问题 是否有函数可以按网格中的名称获取列的当前排序位置 中使用的索引remapColumns方法与中相同colModel大批 重要的是要理解 索引可以不同 如colModel最初使用的jqGrid参数 如果jqGrid使用选项rown
  • jqgrid inlineNav add - 在添加的行上显示保存图标

    我正在使用 jqgrid 的 inlineNav 选项向工具栏添加 添加 选项 我还使用操作格式化程序进行编辑和删除 当我添加新行时 新添加的行有一个编辑图标和一个取消图标 而保存图标位于添加旁边的工具栏上 有没有办法指定新添加的行具有保存
  • jqGrid如何将额外的类应用于标题列

    我想在特定列上应用一个额外的类 我知道通过在 colModel 中指定这一点对于行是可能的 但这些类仅应用于 结果行 中的列 而不应用于标题 我想要达到的是通过简单的类名隐藏较小视口的特定列 与 Twitter Bootstrap 一起使用
  • jQueryUI autoComplete 返回空列表

    在我的 asp net mvc3 应用程序中 我为搜索框添加了自动完成功能 当我测试它时 该操作返回了 3 个结果 您可以看到显示了一个列表 但是 这是一个空列表 您只看到 3 个 并且 li 标记之间没有任何内容 我很确定 操作没问题 因
  • Android 操作栏 SearchView 作为自动完成功能?

    我在操作栏中使用 SearchView 我想在搜索视图上使用自动完成功能来从数据库中获取结果 这可能吗 或者我是否需要使用自定义文本框 然后添加自动完成功能 所以我只需要对 v7 版本执行此操作 并沮丧地发现我不能简单地使用 ArrayAd
  • 不将所需的文件包含到 vim 全方位补全中

    如果我尝试在具有 require xxx 语句的 Ruby 文件中自动完成 它会开始扫描所需的所有文件 以及所需文件所需的文件 它每次都会这样做 是否可以使 vim 自动完成功能不扫描所需文件或仅扫描特定路径中的文件 例如仅 app 以下之
  • jqgrid,调用URL带参数为Json返回

    我的 aspx 页面上有以下代码 jQuery listFondos jqGrid url PorMyController LoadGridData datatype json mtype GET colNames col1 col2 et
  • jqgrid 在编辑框中选择不正确的下拉选项值

    我正在使用表单编辑 表单中有两个选择框 一个选择框是国家 地区 另一个选择框是州 州选择框取决于所选的国家 地区 并将动态填充 例如 Country 美国 期权价值 1 英国 期权价值 2 美国的状态 阿拉巴马州 选项值 1 加利福尼亚州
  • Rails3-jquery-autocomplete 如果没有可用数据则清除字段

    我正在使用rails3 jquery autocomplete 如果自动完成没有返回结果 是否可以清除自动完成字段的值 我试图阻止用户提交数据库中没有的值 我使用的是旧版本 但我实现了change处理程序autocomplete call
  • 如何在 VB6 中创建自动完成组合框?

    是否可以使用VB6下默认的ComboBox控件使其成为智能ComboBox 我们假设这些值已填充到组合框中 例如 New Delhi New World New York 我们需要 ComboBox 响应一个默认事件 因此当用户写入 N 时
  • WPF 自动完成框和 Enter 键

    我试图让 WPF AutoCompleteBox 在按下 Enter 键时引发 KeyDown 事件 我使用的是普通的 KeyDown 挂钩 它适用于除 Enter 键之外的所有内容 有谁知道我该如何解决这个问题 You could inh
  • jqGrid 带有本地数据的过滤器工具栏

    我有一个 jQgrid 它最初通过后端 java struts 的 ajax 调用加载数据 同样 这是一次性加载 一旦加载 jqGrid 就应该对本地可用的数据进行操作 最初 数据类型 json 加载完成后 设置数据类型 local 现在有
  • Django Autocomplete Light - “无法加载结果”

    我在一个小型应用程序上使用 Django autocomplete light 用户界面似乎可以正常工作 我可以从一些可见的值中进行选择 当我在框中输入一个或多个字母时 问题就出现了 通常它应该过滤 选择结果 相反 我收到错误 无法加载结果
  • Python - 可编辑 Gtk.TreeView 单元格中的自动完成

    我最近在 QTable 中使用 QComboBox 编写 PyQt 代码 QComboBox 默认启用自动完成功能 我想尝试用 Gtk3 在 Python3 中重现这个 我遇到过这个例子 Gtk TreeView 中的 Gtk Entry
  • jqGrid:对列重新排序时是否有事件?

    我正在使用 jqGrid 中的列重新排序功能 grid jQuery list jqGrid sortable true 列重新排序后是否会触发事件 如果有的话我也看不到 提前致谢 在 grid jqueryui js jqGrid v3
  • 如何根据输入的内容过滤组合框的内容?

    我们有一个包含 100 多个项目的组合框 当我们在组合框中输入字符时 我们想要过滤掉项目 例如 如果我们输入 ac 并单击下拉选项 那么我们希望它仅显示以 ac 开头的项目 我怎样才能做到这一点 也许您会更喜欢使用操作系统内置的自动完成功能
  • 自动建议 php 的 ajax

    我有一个 html 表单 php 脚本和 jquery 我需要一个 ajax 代码来从我的 php 脚本中进行自动建议 以下是代码 表单 html
  • jqgrid长文本换行

    在jqgrid中 我们从数据库获取长文本 但在JQgrid中显示时需要换行 有什么方法可以换行长文本 没有任何空格 我们只有 110px 的空间用于收款人姓名字段 因为我们有多个列需要显示 我们的代码就像 name firstPayeeNa
  • 如何让 jQuery 的自动完成插件在页面加载时显示其下拉列表?

    http community sciencecareers org mt static plugins CommunityPlus js autocomplete http community sciencecareers org mt s

随机推荐