Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
JQuery + Ordinamento ListView
martedì 30 aprile 2013 - 10.45
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
Javascript
gsistemi
Profilo
| Junior Member
100
messaggi | Data Invio:
mar 30 apr 2013 - 10:45
Ciao a tutti,
ho un listview compilato con un elenco di record tipo questo:
<asp:listview id="rptnomi" runat="server"><itemtemplate>
<div class="nome"><%# databinder.eval(container.dataitem, "path") %> <asp:label id="progr" text='<%# databinder.eval(container.dataitem, "progr") %>' runat="server" clientidmode="static" /></div>
</ContentTemplate></asp:UpdatePanel>
<asp:button id="invia" text="Invia" runat="server" />
attraverso una funzione di jquery cliccando e trascinando il div posso disporli in un ordine diverso. La funzione è questa:
$( "div" ).sortable();
$( "div" ).disableSelection();
Cliccando sul pulsante invia vorrei controllare il nuovo ordinamento, verificare se è cambiato ed eventualmente fare l'aggiornamento sul Db Sql:
sub invia_click( s as object, e as eventargs ) handles invia.click
dim i as integer
for i = 0 to rptnomi.items.count -1
dim lbl as label = ctype( rptnomi.items(i).findcontrol("progr"), label )
if lbl.text <> i then
' fai la modifica sul db
end if
next i
end sub
Il problema è che una volta premuto il pulsante invia la pagina si aggiorna e i div si ridispongono nell'ordine orginale. Ho provato un paio di soluzioni ma senza successo:
- ho incluso il listview in un updatepanel e in pulsante in un altro, il listview non si riordina ma quando vado a scorrere i record sono nell'ordine originale.
- ho aggiunto un altro controllo label all'interno del listview che vado a gestire così:
<asp:listview id="rptnomi" runat="server"><itemtemplate>
<div class="nome"><%# databinder.eval(container.dataitem, "path") %> <asp:label id="progr" text='<%# databinder.eval(container.dataitem, "progr") %>' runat="server" clientidmode="static" /> <asp:label id="nuovo" runat="server" clientidmode="static" /></div>
</ContentTemplate></asp:UpdatePanel>
<asp:button id="invia" text="Invia" runat="server" />
<script type="text/javascript" language="javascript">
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
function BeginRequestHandler(sender, args)
{
this.$list_item = $("div #nuovo");
for( i=0; i<=9; i++ ){
this.$list_item.eq(i).val(i);
}
}
</script>
Il valore viene visualizzato correttamente ma non c'è verso di farlo leggere al lato server.
Come faccio?!?! Grazie a tutti!
Torna su
Stanze Forum
Elenco Threads
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 !