如何从jqgrid中的dataurl获取行id或参数以创建动态选择列表来编辑行

2024-01-31

我有一个 ASP.NET 网站,其 C# 后端使用 Jqgrid。

我希望用户能够选择网格中的项目进行编辑。可编辑的字段之一将作为下拉选择列表呈现给用户,其中仅包含对该用户有效的选项。

例如,假设我有一个显示人员的网格。如果编辑“person1”,则用户可以从该项目的选择列表中选择“蓝色”或“红色”,但如果编辑“person2”,则用户只能从该项目的选择列表中选择“黄色”或“绿色”。选择列表。

我想根据选择的人/行动态填充选择列表。

我在特定字段上设置了 editoptions 和 dataurl,如下所示:

editoptions: { dataUrl: 'FetchData.aspx' }

然而,我以某种方式需要某种参数传递到 FetchData.aspx 页面,以便它可以对特定人员进行背景检查并为特定“人员”创建正确的列表。

我希望我可以传递 rowid 或 itemname 或如下所示的内容来标识所选的特定行/项目:

editoptions: { dataUrl: 'FetchData.aspx?selecteditem=' + Id }

如何传递参数以便为特定项目创建正确的项目列表?网上类似的问题无数,但我一直没能找到确凿的答案……


我通过添加以下 onSelectRow 函数解决了该问题(请注意,下面代码中的“Id”代表我想要作为参数传递的列的名称。它可以是网格中的任何列名称):

onSelectRow: function (id) {
  var temp = $("#list").getRowData(id)['Id']
  $("#list").setColProp('mySelectListColumnName', { editoptions: { dataUrl:'FetchData.aspx?selecteditem=' + temp });
}

以上有助于传递参数。然而,仅此还不够 - 它允许 FetchData.aspx 接收参数并相应地自定义 html 响应,但它只从 dataUrl 获取一次值 - 因此当我选择不同的行时它不会刷新。

为了解决这个问题,我还添加了以下语句:

jQuery.extend(jQuery.jgrid.edit, { recreateForm: true });

这确保每次单击编辑时都会重新创建编辑表单,这正是我想要的,因为每行的编辑表单都会略有不同。工作完美。希望这对那里的人有帮助 - 有很多选择,这是我见过的最简单的。它有效。

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

如何从jqgrid中的dataurl获取行id或参数以创建动态选择列表来编辑行 的相关文章

  • ASP.NET中如何访问除wwwroot以外的位置

    我可以使用访问服务器的物理位置Server MapPath 这给了我内部的物理路径wwwroot文件夹 我想将一些数据保存到同一服务器的另一个驱动器中D 驾驶 我想我无法获取以下位置的物理位置D 驾驶使用Server MapPath因为它位
  • 'DOMException:使用'option:selected'选择器时无法在'Element'上执行'querySelectorAll'

    我正在运行一个页面 该页面在以下行中引发错误 var label select find option selected html select find option first html 为了完整起见 这里是完整的 jQuery 函数
  • jquery 表单使用 .on() 提交

    我正在尝试发送由 jquery 创建的表单 该表单附加到一个 div 中 下面的变量 data 是使用 php 创建的 我将只发布最重要的 js 代码 我尝试了很多带有和不带 on 的方法 但我未能让警报框显示 1 以便我知道代码块实际上已
  • 如何应用 EXIF 定位

    我注意到并不是每个浏览器都应用 EXIF 方向 我的手机上的 Chrome 不应用 EXIF 方向 但 Safari 手机则应用 那么既然它不是标准的 那么如何在 Safari 上应用 EXIF 方向而不应用两次呢 另外我想知道是否可以在客
  • 将列添加到新的数据行

    是否可以创建一个新的 DataRow 对象并在运行时向其中添加列 How can I specify column names for this data row object DataRow row new DataRow 不 DataR
  • Jquery获取自动高度元素的高度

    有没有办法返回已设置为 auto 的元素的高度 当我调用 element height 时 我只是得到 0 这是 jquery 代码 这img height 返回 0 因此最终结果为 off img css top img parent h
  • 如何重定向到 $.AJAX 上的视图完整 - asp.net mvc 3

    好的 我想在验证检查后使用 AJAX 将用户重定向到周围视图 我该怎么做 请帮忙 这是我的 AJAX 代码 EX 我希望用户重定向到 Home Movies 控制器操作 如果未登录 则停留在同一页面
  • Stripe Webhook 事件 续订订阅

    我在我的 Asp net 应用程序中使用 STRIPE 进行信用卡付款 应用程序有每月订阅计划 第一次当用户订阅 webhook 事件 customer subscription created 时触发 我的问题是 下个月订阅续订时哪些事件
  • 关于线程池最大线程数的说明

    我读了here http blogs msdn com b tmarq archive 2010 04 14 performing asynchronous work or tasks in asp net applications asp
  • 读取 ASP.NET 中分块传输编码的 http 请求的正文

    J2ME 客户端正在使用分块传输编码发送 HTTP POST 请求 当 ASP NET 在 IIS6 和 WebDev exe server 中 尝试读取请求时 它将 Content Length 设置为 0 我想这没问题 因为加载请求时
  • 如何识别当前打开的每个单独的浏览器窗口?

    如何使用 javascript 唯一地识别当前为所有主要浏览器打开的每个单独的浏览器窗口 让我解释一下我需要了解的内容 并考虑以下场景 我有 3 个当前打开的浏览器窗口 任何现代浏览器 即 Chrome Firefox 等 每个窗口都包含多
  • 当按下 html 键盘按钮时,将文本添加到输入字段(具有焦点的字段)

    我使用 HTML 创建了一个屏幕键盘 div and a 标签 页面上有六个文本输入 名字 昵称 姓氏 注释 过敏 手机号码 我不太擅长 JS 但如果页面上只有一个输入 我确实知道该怎么做 但我不确定当有多个输入时该怎么做 我遇到的问题之一
  • jQuery:在 jQuery 对象中存储附加/额外的数据/信息?

    在 jQuery 对象中存储额外的数据是否可能且明智 现在我有包含一些数据的对象 但这些对象也有该数据的视觉表示 这可行 但我有很多代码来保持它们同步 例如 如果您从 dom 中删除一个对象 我还必须从对象数组中删除相关对象 删除相当简单
  • .addClass 仅添加到无序列表中单击的项目符号

    我有一个简短的无序列表 其中有两个项目符号 我添加了一些 Javascript 这样当我单击项目符号时 它会向其中添加一个类 问题是 它将该类添加到所有现有的 li 中 而不仅仅是我单击的那个 这是 JSFiddle http jsfidd
  • 在 Bootstrap 3 中的工具提示中添加换行符

    我正在使用 Bootstrap 3 并向我的 div 添加了一个工具提示 我尝试过使用 n 和 创建新行 Bootstrap 会阻止我吗 div class content show tooltip 你需要添加data html true
  • 为什么将 Backbone.js 与 Rails 结合使用? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在派生自 Control 的 ASP.NET 自定义控件中呈现自关闭标记

    我正在开发 Facebook FBML 控件库 并希望创建类似于 ASP NET WebControls 库的 FBML 控件 我有一个默认处理渲染的基类 这是我的渲染方法 protected override void Render Ht
  • 动态添加项目到放大弹出画廊

    有没有办法动态添加图库项目华丽的弹出窗口 http dimsemenov com plugins magnific popup 那已经开放了 或更新当前项目 找不到关于 in 的任何内容插件文档 http dimsemenov com pl
  • 如何向 Azure SQL 的 ASP.NET 成员资格提供程序添加重试逻辑?

    我们在 Azure SQL 数据库上有一个基于 ASP net sqlMembershipProvider 的用户数据库 很明显 开箱即用的 sqlMembershipProvider 4 0 不具备 Azure SQL 连接所需的重试逻辑
  • jquery validate - 在验证发生之前替换字段中的逗号

    看来 即使使用当前的验证插件 如果您想使用 min 进行验证 也不能在值中包含逗号 我在github上发现了几个月前 11个月 提交的补丁来修改源 js文件 但它仍然没有发布 因此 我没有修改源 js 文件 而是尝试找出如何在验证之前替换逗

随机推荐