[asp & javascript] onclick event

Pagina: 1
Acties:

  • Supermario16
  • Registratie: Mei 2004
  • Laatst online: 22:03
Aan de volgende regel is een werkend javascript event gekoppeld:
code:
1
<div id="item1" class="item" onclick="determineItem('item1');"> Home -</div>

Kan ik hier tevens een asp.net event aan koppelen? (of zou ik in het javascript event een asp.net methode / functie aan kunnen roepen)

Google geeft geen antwoord ;(

  • Juup
  • Registratie: Februari 2000
  • Niet online
Je kunt in de javascript functie "determineItem" toch gewoon een ajax call naar je server doen (aangenomen dat de asp daar draait).

Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.


  • Supermario16
  • Registratie: Mei 2004
  • Laatst online: 22:03
Juup schreef op dinsdag 24 juni 2008 @ 21:51:
Je kunt in de javascript functie "determineItem" toch gewoon een ajax call naar je server doen (aangenomen dat de asp daar draait).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function determineItem(item)
        {
            formerMenuItem.style.backgroundColor = "";
            newItem = document.getElementById(item);
            newItem.style.backgroundColor = "#FEC707";
            formerMenuItem = newItem;
            if (item == 'item1')
                {
                    showprojects();
                    header.className = 'headerhome';
                
                }
            else if (item == 'item2')
                {
                    showprojects();
                    header.className = 'headerinformatie';
                }
            else if (item == 'item3')
                {
                showprojects();
                header.className = 'headerprojecten';
                }
            else if (item == 'item4')
                {
                showprojects();
                header.className = 'headercontact';
                PageMethods.clickContact();
                }
        }


Ik heb wat geprobeert met PageMethods waarbij clickContact() de methode is in de codebehind maar hij voert hem niet uit. Misschien nog 'n kleine tip zodat ik verder kan zoeken?

  • Juup
  • Registratie: Februari 2000
  • Niet online
Ik weet geen fluit van asp maar dit klinkt alsof je een javascript/asp library gebruikt.
Als dat zo is is het handig om te vermelde welk pakket.
Zo niet wat doe je allemaal in PageMethods.clickContact?

[ Voor 5% gewijzigd door Juup op 24-06-2008 22:04 ]

Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:16

TeeDee

CQB 241

Supermario16 schreef op dinsdag 24 juni 2008 @ 21:59:
[...]
Ik heb wat geprobeert met PageMethods waarbij clickContact() de methode is in de codebehind maar hij voert hem niet uit. Misschien nog 'n kleine tip zodat ik verder kan zoeken?
Wat zegt de debugger? Komt het Event uberhaupt wel aan in de codebehind? Hoe ziet je clickContact eruit? Werkt PageMethods wel? Waarom via PageMethods?
Mogelijk heb je hier meer aan.

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


  • RM-rf
  • Registratie: September 2000
  • Laatst online: 00:12

RM-rf

1 2 3 4 5 7 6 8 9

als PageMethods een serverside ASP object is, is dat niet 'zomar' aan te roepen via clientside Javascript... hooguit zou je je javascript een 'call' kunnen laten maken naar de server en hier gegevens naar de server later sturen, een opdracht die methode op dat object uit te voeren en/of gegevens hieruit terug te laten ontvangen


daarvoor heb je echter dus een 'wrapper' nodig, bv AJAX is hiervoor uitstekend geschickt (het gebruik van een xml-http-requestobject vanuit javascript om contact met je server te maken, gegevens te versturen en eventueel te ontvangen)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen


  • Supermario16
  • Registratie: Mei 2004
  • Laatst online: 22:03
Heb het pagemethodes gedeelte nu werken:
code:
1
2
3
4
5
6
// Click on contact knop
[WebMethod]
public static void clickContact()
{
        
}

Bij het klikken op de div springt hij nu ook in de code behind.
Volgende probleem is dat ik helemaal geen static wil gebruiken! Ik moet aan de hand van deze actie een multiview kunnen veranderen wat via een static methode niet kan.

Dit heb ik ook gevonden:
http://www.codeproject.co...x_Call_using_AjaxNet.aspx
Was een andere pagina op codeproject welke ik nu niet meer kan vinden :?
Waarbij ik nu de bovenste optie gebruik, maar dus eigenlijk de onderste optie moet gebruiken waar ik eigenlijk niets van snap. Hierop ga ik nog even verder zoeken maar wat hulp zou uiteraard nog welkom kunnen zijn:)

[ Voor 5% gewijzigd door Supermario16 op 26-06-2008 10:55 ]


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:16

TeeDee

CQB 241

Het gebruik van een static op je codebehind is inherent aan het gebruik van PageMethods (als dat inmiddels anders is, please let me know).

Verder "de bovenste optie" en de "onderste optie"? Wat bedoel je daarmee?

Tips, tricks en mogelijk inspiratie:
Wrap het e.e.a in een Session
Gebruik jQuery
• Kijk ook of je kan stoeien met $get
etc. etc. Er zijn via Google wel meer interessante opties te vinden dan alleen Asp.net Ajax.

[ Voor 11% gewijzigd door TeeDee op 26-06-2008 11:17 ]

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


  • Supermario16
  • Registratie: Mei 2004
  • Laatst online: 22:03
Pagina: 1