【问题标题】:Sending a server-side object via JSON from Javascript for jqGrid通过 JSON 从 Javascript for jqGrid 发送服务器端对象
【发布时间】:2012-08-21 14:58:51
【问题描述】:

我的服务器端代码中有一个类,比如:

public class foo
{
   public int FieldOne { get; set; }
   public string FieldTwo { get; set; }
   public float FieldThree { get; set; }
}

现在,在我的客户端代码中,有一个表单可以在输入中加载数据,用于从数据库中检索信息,然后必须将该信息加载到 jqGrid。

如果它是 [HttpPost] 的形式,我知道如何从表单中获取服务器端函数/操作数据,例如:

[HttpPost]
public ActionResult Index (foo model)
{
   ...
}

但我无法让网格调用此方法。我已将 jqGrid 的参数“url”设置为“Controller/Index”,但它没有调用它。

有没有办法这么称呼它?或者有没有其他方法可以通过 Javascript 以对象格式发送表单信息?

谢谢。

UPD:

这是网格代码:

grid.jqGrid({
        url: "Controller/Action",
        datatype: 'json',
        emptyrecords: "No hay proyectos cargados",
        colNames: ['Code', 'Desc', 'Rev', 'Client'],
        colModel: [
                 { name: 'Code', index: 'Code', width: 100 },
                 { name: 'Desc', index: 'Desc asc, Desc', width: 200 },
                 { name: 'Rev', index: 'Rev', width: 100, align: "right" },
                 { name: 'Client', index: 'Client', width: 200, align: "right" }
               ],
        rowNum: 10,
        loadonce: false,
        sortname: 'Code',
        viewrecords: true,
        sortorder: "desc",
        height: 'auto',
        caption: ""
    });

如果我更改@Url.Action() 生成的URL 也是一样的。

【问题讨论】:

  • 试试这样 '@Url.Action("Index")' 并请粘贴您的网格代码。
  • 请看一下这个问题:stackoverflow.com/questions/4063682/…
  • 您在 firebug、开发者工具、fiddler 中遇到任何错误吗?
  • 谢谢 nemesv,那就行了。

标签: javascript asp.net asp.net-mvc json jqgrid


【解决方案1】:

将此行添加到您的网格中。

mtype: 'GET'

现在您的网格正在尝试对仅 POST 操作的 GET(默认)请求(由于您应用的属性)。或者,您可以删除 POST 限制并将 AllowGet 选项添加到您的return Json(*******)

可能有不止一个问题,但让我们从简单的东西开始:)

-编辑-

此外,正如 cmets 中所述,Fiddlers + Firebugs/Chrome 控制台在使用 javascript / ajax / json 时有很大帮助,因为它们在出现错误时不会输出任何视觉效果。

【讨论】:

  • 好吧,实际上我使用 postData 选项和一个通过 JavaScriptSerializer 对象返回字符串的操作解决了它。还是谢谢你
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-16
  • 1970-01-01
  • 2016-01-30
  • 1970-01-01
  • 2014-11-20
  • 2011-08-30
  • 1970-01-01
相关资源
最近更新 更多