2009-12-07 14 views
11

Ho il seguente codice sulla mia pagina aspx:jqGrid, chiamare URL con i parametri per il ritorno JSON

jQuery("#listFondos").jqGrid({ 
    url: '/PorMyController/LoadGridData/', 
    datatype: 'json', 
    mtype: 'GET', 
    colNames: ['col1', 'col2',...etc 

Tutto sta funzionando benissimo, ma mi chiedo se è possibile chiamare il metodo di invio URL qualche parametri. So che per impostazione predefinita, quando si chiama il metodo URL, jqGrid invia alcuni parametri per controllare paginazione della griglia:

public ActionResult LoadGridData(string sidx, string sord, int page, int rows) 

Quindi, voglio aggiungere un parametro in più per fare un po 'di filtro sui dati che sta andando da caricare nella griglia. Per esempio mi piacerebbe avere questo:

public ActionResult LoadGridData(string sidx, string sord, int page, int rows, string filterId) 

Per quanto ne so, non ho bisogno di specificare i primi 3 parametri, causa jqGrid lo fa di default, ma come faccio a inviare il parametro filterId?

risposta

13

Io risolvo il problema da solo. Tutto ciò che è necessario fare è inviare il parametro come querystring sulla url:

url: '/PorMyController/LoadGridData?filterId=123',...etc 

I parametri defaul per paging manterrà essere sended, in modo da avere solo per specificare i parametri aggiuntivi.

1

È possibile specificare una funzione anziché un tipo di dati denominato per il parametro datatype. Quindi in quella funzione puoi eseguire manualmente una chiamata jQuery. Ajax con qualunque parametro tu voglia. Questo thread ha un buon esempio: here. (Specificamente l'ultima risposta).

Problemi correlati