【问题标题】:Creating Drop down list for a column which is defined as an Int in the SQL database - jqGrid ASP.NET MVC为在 SQL 数据库中定义为 Int 的列创建下拉列表 - jqGrid ASP.NET MVC
【发布时间】:2012-08-08 17:36:24
【问题描述】:

我在 ASP.NET MVC 中使用实体框架Database First 方法。

我已从现有数据库创建模型,一切正常。

我正在使用jqGrid 并尝试为在数据库中定义为Int 的列创建一个下拉列表。

在数据库中,值是 0 或 1,因此在下拉列表中,我必须根据是 0 还是 1 显示两个值,例如“导入”或“导出”。

我能在 jqGrid 中处理这种情况吗?

如有任何建议,请发表!

【问题讨论】:

  • “列的下拉列表”你能详细说明一下吗
  • @Yasser:我在数据库中有一个 Int 列,包含 0 或 1。我正在使用 jqGrid,在显示表格时,我想显示文本“导入”为 0 和1的“导出”。当我添加/编辑一行时,我想显示一个带有值“导入”和“导出”的下拉列表,以便他们可以选择其中一个值,但是当我将其保存到数据库时,我需要保存为0或1。我够清楚了吗?
  • 是的,清楚 enuf !现在告诉我有什么尝试?
  • @Yasser:到目前为止,我已经艰难地处理了这个问题。当用户在模型表单中添加/编辑时,我能够显示下拉列表,但我最终在模型类中创建了另一个字符串属性来保存值“导入”和“导出”。我不确定是否有一种简单的方法可以使用现有的 Int 属性来处理这个问题。
  • @Yasser:另外,当行显示在 jqGrid 中时,特定列不显示“导入”或“导出”,因为该列只能显示 0 或 1,这是有道理的,但我希望它根据 0 或 1 显示“导入”或“导出”。有没有简单的方法来处理所有这些问题?请推荐!

标签: asp.net-mvc asp.net-mvc-3 entity-framework-4 jqgrid jqgrid-asp.net


【解决方案1】:

我认为你可以在 colModal 本身中处理这个问题。有一个选项 editOption 您可以与 colModal 一起指定,并且根据您从数据中获得的值,您可以指定该列的 text 属性

在这种情况下,网格的数据应包含要在 myname 列中设置的“One”或“Two”。

现在,有了这个设置

<script>
jQuery("#grid_id").jqGrid({
...
   colModel : [ {name:'myname', edittype:'select', formatter:'select', editoptions:{value:"1:One;2:Two"}} ... ]
...
});
</script>

数据应包含键(“1”或“2”),但值(“One”或“Two”)将显示在网格中。

查看此链接以获得更多帮助。你会得到你的答案。因为你没有发布你的代码(至少你应该为你那个特定的专栏这样做)我不能说你正在以同样的方式实现。

【讨论】:

  • 感谢您的宝贵时间。实际上,我使用的是“buildSelect”而不是“value”,但是我尝试了这个editoption(value),是的,在“添加/编辑”选项中,它显示了带有一和二的下拉列表,但是当网格显示时,它没有显示该特定列的“一”或“二”,因为它是数据库和模型中的 Int 列,它是一个 Int 属性,因此它不会在列本身中显示字符串“一”或“二”。希望你能理解我的问题!顺便说一句,我在上面找不到任何链接。
  • 在这个答案号中看到这两个链接stackoverflow.com/questions/2581384/…,并检查ans 2中提供的链接
  • 谢谢,我去看看。
猜你喜欢
  • 1970-01-01
  • 2017-03-22
  • 1970-01-01
  • 2013-09-07
  • 1970-01-01
  • 1970-01-01
  • 2013-08-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多