使用jqGrid userdata

时间:2009-06-11 14:23:39

标签: jquery asp.net-mvc jqgrid

我在ASP.Net MVC视图上有一个jqGrid。我想用它来传递页面上隐藏文本控件的值作为jqGrid方法的附加参数。

我有以下隐藏文字字段:

<div>
<%= Html.Hidden("contactId", Model.ContactId) %>
</div>

我想做类似的事情:

userdata: {contactId : jQuery('#contactId')}

在jqGrid调用中。 Controller Action方法具有以下签名:

public ActionResult SearchResult(string sidx, string sord, int page, int rows, object userdata)

但是当我运行它时,当我在调试器中检查它时,C#代码中的userdata只是说System.Object,而我认为我不能从中获得任何有用的东西。

我出错的任何想法?

1 个答案:

答案 0 :(得分:6)

您想要的jqGrid属性是postData。 UserData走另一条路。

将您对JqGrid的调用更改为包括:

postData: {contactId : jQuery('#contactId').val()}

然后更改操作的签名以获取contactId:

public ActionResult SearchResult(string sidx, string sord, int page, int rows, 
    int contactId)
我猜对了这个类型。使用真实类型代替int。