Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [C#] Pulire query string

    ciao ragazzi, mi ritrovo con questo problema:

    ho determinate azioni all'interno della mia pagina, ad esempio l'evento di ricerca. Questo non fa altro che settare nella querys string un determinato parametro a "search" e sul postaback viene letta di conseguenza la querystring, ed in base al valore vengono eseguite le relative azioni.

    Ora mi succede che ho una dropdown che sull'evento onselectedindexchange esegue un metodo e di conseguenza mi genera un postaback.
    Il problema è che generando il postaback, se nella query string c'è qualcosa, riesegue l'evento associato a quel qualcosa (esempio la ricerca).

    sapete come posso ovviare a questo problema???

    ho visto che ci son alcuni metodi sulla querystring tipo "clear", ho provato ad utilizzarli, ma mi dice che la query string è solo in lettura...

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    :master: Che io sappia, si può fare con javascript. Lato server non so
    Pietro

  3. #3
    interessante, potrei farlo sull'evento onclick lato client, anche se non è il massimo !!!
    sai come si fa?

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da heavy&blues
    interessante, potrei farlo sull'evento onclick lato client, anche se non è il massimo !!!
    sai come si fa?
    in una pagina aspx metto

    codice:
    If Not Me.IsPostBack Then
    	AnnullaQueryString(Me)
    End If

    AnnullaQueryString è un metodo di una libreria

    codice:
    '----------------------------------------------------------------------
    'Una pagina aspx mantiene sempre la querystring ricevuta.
    'Questa funzione aggiunge codice javascript per togliere la querystring
    '----------------------------------------------------------------------
    Public Sub AnnullaQueryString(ByVal pagina As Page)
    	pagina.ClientScript.RegisterClientScriptBlock(pagina.GetType(), "annulla_querystring", "document.forms[0].action = (document.forms[0].action.indexOf('?') != -1)?document.forms[0].action.substr(0, document.forms[0].action.indexOf('?')): document.forms[0].action;", True)
    End Sub
    Pietro

  5. #5
    grazie mille... veramente efficace!

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da heavy&blues
    grazie mille... veramente efficace!
    Già provato? con IE6, IE7, Opera 9.5 e Firefox 3
    Pietro

  7. #7
    no no.. in giornata smadonno su questo.
    per il momento ho risolto in un modo abbastanza bruttino... il tuo mi sembra piu elegante!

  8. #8
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da heavy&blues
    no no.. in giornata smadonno su questo.
    per il momento ho risolto in un modo abbastanza bruttino... il tuo mi sembra piu elegante!
    :master: a dire la verità, mi piacerebbe che funzionasse, piuttosto che fosse elegante
    Pietro

  9. #9
    con elegante intendo che funzionerà sempre e comunque, soprattutto indipendentemente dal tipo di browser, e la tua mi sembra che potrebbe andare.
    poi la provo e ti dico!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.