Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过JSON从JavascriptforJQGrid发送服务器端对象_Javascript_Asp.net_Asp.net Mvc_Json_Jqgrid - Fatal编程技术网

通过JSON从JavascriptforJQGrid发送服务器端对象

通过JSON从JavascriptforJQGrid发送服务器端对象,javascript,asp.net,asp.net-mvc,json,jqgrid,Javascript,Asp.net,Asp.net Mvc,Json,Jqgrid,我的服务器端代码中有一个类,比如: public class foo { public int FieldOne { get; set; } public string FieldTwo { get; set; } public float FieldThree { get; set; } } 现在,在我的客户端代码中,有一个表单将数据加载到用于从数据库检索信息的输入中,然后该信息必须加载到jqGrid 我知道如果表单是[HttpPost]形式,如何从表单中获取服务器端函数/

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

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,则情况相同。

在网格中添加此行

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

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

-编辑-


另外,正如评论中提到的,Fiddler+firebug/Chrome控制台在使用javascript/ajax/json时帮助很大,因为当出现错误时,它们不会输出任何可视内容。

尝试类似的“@Url.Action(“Index”)”并请粘贴您的网格代码。请看看这个问题:您在firebug、开发人员工具和,fiddler?谢谢nemesv,可以了。实际上,我使用postData选项和通过JavaScriptSerializer对象返回字符串的操作解决了这个问题。无论如何谢谢你