2009-06-11 63 views
6

我有一個ASP.Net MVC視圖上的jqGrid。我想用來傳遞頁面上的隱藏文本控件的值作爲jqGrid方法的附加參數。使用jqGrid用戶數據

我有以下的隱藏的文本字段:

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

,我想要做的事,如:

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

在jqGrid的電話。該控制器的操作方法具有以下特徵:

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

但是當我運行它,userdata在C#代碼只是說System.Object當我檢查它在調試器,我不認爲我能得到anythings有用了的。

任何想法,我哪裏出了問題?

回答

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。

+0

contactId是一個Guid編碼成的字符串,當我在字符串contactId中籤名時,我得到下面的字符串值:「[object HTMLInputElement]」。 我認爲我需要得到jQuery('#contactId')元素的值而不是元素本身。不幸的是,我對jQuery/JavaScript完全陌生,不知道該怎麼做! – 2009-06-11 15:57:00