Atocompletamento in asp.net mvc

lunedì 13 luglio 2009 - 12.09

sanfra Profilo | Junior Member

Salve, stavo cercando di creare un Textbox che mi facesse da autocompletamento mentre scrivo e questo in asp.net mvc e jquery.
Ho visto miriade di esempi sulla rete, e così ho pensato di adattare uno di questi esempi al mio progetto.
La prima cosa che vado a fare è quella di scaricare l'tulima versione di "jquery.autocomplete.js" e la implemento nella cartella Scripts nel mvc.
Dopodichè creo un collegamento nel file .master in modo che si veda su tutto il progetto.
Mi vado a creare una classe nel model che mi prende i dati da Linq To Sql e mi faccio ritornare tutta la tabella con la dicitura

Codice:
public static IQueryable<Country> GetRegionCapByID()
{
return dbcomuni.Country;

}
Dopo mi creo il mio controller CityController e all'interno di quest'ultimo ho la mia action:


Codice:
public ActionResult Find(string r)
{

var regioni = from rc in DataComuni.GetRegionCapByID()

where rc.Regione == r

select new { rc.Regione };

return Json(regioni);
}

A questo punto nella View Index del controller Home mi vado ad inserire il controllo <%= Html.TextBox %>
e infine inserico nel file global.asax


la route:

Codice:
routes.MapRoute(
"FindRegionCap",
"Find/{r}",
new { controller = "City", action = "Find", id = "" });
non mi dà nessun errore però non mi dà neppure il risultato che dovrebbero essere ile regioni nel mio db.


P.S.: vi posto anche il codice javascript che io ho in parte copiato, in parte modificato per le mie esigenze:

Codice:
<script type="text/javascript">
$(document).ready(function(){
$("input#city").autocomplete('<%=Url.Action("Find", "City") %>',
{
dataType: 'json',
parse: function(data)
{
var rows = new Array();

for(var i=0; i<data.length; i++)
{
rows[i] = { data:data[i],
value:data[i].Regioni,
result:data[i].Regioni
};
}
return rows; }});
});
</script>
Volevo aggiungere che quando faccio il debug sul controller lil parametro r della funzione lato server è null.

Grazie e spero di avere al più presto un vostro aiuto.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5