Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[ASP.NET/C#]Na submit html code meegeven bij terugkoppeling

Pagina: 1
Acties:

  • Razr
  • Registratie: September 2005
  • Niet online
Ik kom er echt even niet meer uit :( Met de AJAX.NET componenten heb ik een simpele webshop gemaakt (ben er nog mee bezig) en nu wil ik dus na het toevoegen een melding weergeven.

Nu had ik bedacht deze melding bij het laden van de pagina al in een div te zetten achter elk artikel, en dan een css atribuut gebruiken om deze onzichtbaar te houden. Vervolgens na het onClick event wil ik dan een stukje JS uitvoeren welke de div zichtbaar maakt. Wanneer vervolgens iemand een ander artikel toevoegt word weer diezelfde JS functie aangeroepen die de vorige div sluit en de bij het toegevoegde artikel behorende div weer opend.

Nu krijg ik het gedeelte niet voor elkaar om de JS functie aan te roepen in het onclick event van de toevoegknop. Ik heb geprobeerd om een onload toe te voegen aan de attributen collectie van de parent van de knop (htmltablecell) en ook om zelfs met FindControl een andere htmltablecell op te zoeken en hier wat aan de innerhtml toe te voegen.

Het enige wat lukte was om een label te maken en deze toe te voegen aan de parent van de knop (dus de cel waar de knop instaat). Alleen de html code komt niet over, maar de gewone tekst wel ?! Dit heeft waarschijnlijk iets te maken met de AJAX componenten denk ik.

Heeft iemand enig idee hoe ik dit danwel moet doen? Of zoek ik het allemaal veel te moelijk en kan het vele malen makkelijker?

  • Razr
  • Registratie: September 2005
  • Niet online
Niemand een oplossing?

Verwijderd

gebruik twee keer <asp:literal></asp:literal>
in de ene zet je het formulier e.d.
in de andere zet je die melding.
de tweede maak je ook onzichtbaar.
maak een onclick-event voor de submit knop en zorg dat dit geen <input /> maar <asp:button> is.
zorg ervoor dat - als er op de <asp:button> wordt geklikt - het bericht zichtbaar wordt

  • Razr
  • Registratie: September 2005
  • Niet online
Verwijderd schreef op woensdag 09 januari 2008 @ 16:57:
gebruik twee keer <asp:literal></asp:literal>
in de ene zet je het formulier e.d.
in de andere zet je die melding.
de tweede maak je ook onzichtbaar.
maak een onclick-event voor de submit knop en zorg dat dit geen <input /> maar <asp:button> is.
zorg ervoor dat - als er op de <asp:button> wordt geklikt - het bericht zichtbaar wordt
Dit is de situatie: (poging tot uitleg ;) )
Ik maak dynamisch meerdere tabellen aan op de pagina. Elke tabel is een product met wat bijbehorende info etc. Nu zit hier dus ook een knop 'Voeg toe' oid. Wanneer hier op geklikt wordt moet er dus een melding verschijnen dat de actie is gelukt in de zin van 'Toegevoegd' bijvoorbeeld.

Bovenstaande is hiervoor inderdaad een goede oplossing. Alleen omdat ik gebruik maar van de AJAX componenten, wanneer ik nu binnen een andere tabel ook die toevoeg knop gebruik krijg ik hier ook die melding, echter is de vorige melding nog niet verdwenen. Moet ik hiervoor zorgen met JS bijv?

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20-11 23:37

TeeDee

CQB 241

OnClientClick?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Razr
  • Registratie: September 2005
  • Niet online
Maar die wordt uitgevoerd vóór het click event. Dus nadat het eigenlijke click event in de codebehind is afgehandeld verdwijnt de melding weer. Dit update panel wordt dan gerefreshed denk ik?

De code die ik gebruik
C#:
1
btn.onClientClick = "toegevoegdTekst('test')";


En het bij behorende javascript:
JavaScript:
1
2
3
4
5
6
7
8
9
10
var textId; 
function toegevoegdTekst(obj)
{
    obj = document.getElementById(obj);
    obj.style.display = (obj.style.display == 'none') ? '' : 'none';
    if(textId != null && textId != obj){
        textId.style.display = 'none';
    }
    textId = obj;
}

Die functie maakt dus gewoon de div zichtbaar en slaat het id op. Is er al een id gezet wordt deze gesloten (bijv. een vorige melding). Maar de melding (lees: de div) verdwijnt weer als het click event is afgehandeld..

[ Voor 5% gewijzigd door Razr op 09-01-2008 21:25 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20-11 23:37

TeeDee

CQB 241

Ik heb erg veel moeite om nu exact te begrijpen wat je wil.
Stop je die 'dynamische' tables in repeater, grid of wat dan ook? Zo ja, kan je ItemCommand oid gebruiken om specifiek een Item te pakken en daar wat gegevens te tonen.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Razr
  • Registratie: September 2005
  • Niet online
TeeDee schreef op donderdag 10 januari 2008 @ 11:08:
Ik heb erg veel moeite om nu exact te begrijpen wat je wil.
Stop je die 'dynamische' tables in repeater, grid of wat dan ook? Zo ja, kan je ItemCommand oid gebruiken om specifiek een Item te pakken en daar wat gegevens te tonen.
Ja het is ook lastig uit te leggen, ik voeg ze gewoon toe als controls van een bovenliggende div die altijd bestaat.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 20-11 23:37

TeeDee

CQB 241

En geef nu eens wat code + output? Het wordt er allemaal niet makkelijker op. Ik vermoed dat wat jij wilt doen vrij triviaal is (en dat je echt niet de enige bent).

Heart..pumps blood.Has nothing to do with emotion! Bored

Pagina: 1