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

Document style aanroepen bij bezoeken pagina

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb op een pagina een hidden fieldset staan welke ik doormiddel van een radiobutton zichtbaar maak of juist weer laat verdwijnen als ik een andere radiobutton aanklik.

Nu wil ik op een of andere manier vanaf een pagina de pagina met de hidden fieldsets bezoeken alleen wil ik een bepaalde fieldset direct zichbaar maken doormiddel van.... Javascript ?

Ik gebruik dus:

code:
1
document.getElementById('IdVanDeFieldSet')style.display


Ik kan er wel voor zorgen dat de radiobutton geselecteerd is met wat PHP code, het probleem is dat de radiobutton dan alleen geselecteerd is en dat de fieldset niet zichtbaar wordt.

Wanneer ik de selecteerde radiobutton nogmaals aanklik komt het hidden stuk tevoorschijn.

Ik zal dus via een hyperlink welke naar deze pagina verwijst een stukje code of javascript aan moeten roepen dat als het ware de "muisklik" nabootst.

Is dit een haalbaar iets, of gewoon te tricky om te doen ? Ik wil er vanuit gaan dat men Javascript wel ge-enabled heeft staan, anders hebben ze pech :9

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

.click() erachter zetten :?

Of even een hele simpele testcase online zetten, zodat we wat beter naar je probleem kunnen kijken ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

je kan toch een extra (get) parameter meesturen met je url?

Verwijderd

Topicstarter
In de PHP code voor het selected gedeelte, ik krijg namelijk zo snel even een error als ik het er gewoon in zet click()
Of even een hele simpele testcase online zetten, zodat we wat beter naar je probleem kunnen kijken ;)
Ja, moet ik even wat code eruit hacken :9
Verwijderd schreef op woensdag 10 oktober 2007 @ 13:44:
je kan toch een extra (get) parameter meesturen met je url?
Ja dit dacht ik dus ook, wat zou jij mee willen geven dan ? Ik heb redelijk wat geprobeerd, maar niets mocht baten.

  • disjfa
  • Registratie: April 2001
  • Laatst online: 04-11 11:05

disjfa

be

Je wilt weer php aanroepen met javascript. Je wilt code hacken. Je klooit maar weer aan. Als je nou eerst eens je dingen op een rijtje zet wat je wilt en dan kijkt of dat client side of server side moet, dan kan je wat maken.

Dus leg het eens netjes uit wat er waar moet gebeuren.

disjfa - disj·fa (meneer)
disjfa.nl


Verwijderd

Topicstarter
disjfa schreef op woensdag 10 oktober 2007 @ 14:06:
Je wilt weer php aanroepen met javascript. Je wilt code hacken. Je klooit maar weer aan. Als je nou eerst eens je dingen op een rijtje zet wat je wilt en dan kijkt of dat client side of server side moet, dan kan je wat maken.

Dus leg het eens netjes uit wat er waar moet gebeuren.
Het moet clientside, ik denk dat ik het redelijk uitgelegd heb in de TS, ik ga hier niet even een hele broncode neerzetten, zou jij ook niet doen, je hackt dus eruit wat hier nodig zou zijn... tja... hoe jij het anders wil noemen...

Ik moet op een of andere manier een "click" genereren op een radiobutton nadat ik hem geselecteerd heb doormiddel van een $_GET en "checked" toe gevoegd heb aan de radiobutton.

En om nou te zeggen "Je klooit maar weer aan" gaat echt nergens over, jij bent dus een ubertweaker en tweakt dus eigenlijk niet... wat doe je hier dan ? ;)

[ Voor 13% gewijzigd door Verwijderd op 10-10-2007 14:13 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

HTML:
1
2
3
4
5
6
7
<form>
  <input type="radio" name="BtM" value="Male"  onclick="alert(this.value)"> Male
  <br>
  <input type="radio" name="BtM" value="Female" onclick="alert(this.value)"> Female
   <br>
   <input type="button" value="click" onclick="(forms[0].elements['BtM'][0].click())">
</form>

Dit is wat ik bedoel. Ik genereer gewoon een click event voor (in dit geval) voor de eerste radio button :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
BtM909 schreef op woensdag 10 oktober 2007 @ 14:32:

Dit is wat ik bedoel. Ik genereer gewoon een click event voor (in dit geval) voor de eerste radio button :)
Ik kan dat natuurlijk ook aanroepen wanneer ik de pagina laad, de click. Doomiddel van PHP code met $_GET en if() selecteer ik wat ik wil klikken en dat zou theoretisch moeten werken.

Je brengt me op ideeen :)

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Maar waar ik origineel op doelde is een testcase, want wellicht is een andere mooiere oplossing beschikbaar :)

Ik snap namelijk nog steeds niet goed wat je probleem is :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
BtM909 schreef op woensdag 10 oktober 2007 @ 15:17:
Ik snap namelijk nog steeds niet goed wat je probleem is :)
Het probleem is dat wanneer je met een $_GET de radiobutton selecteert, het hidden gedeelte niet tevoorschijn komt.

Je moet dus nogmaals klikken op de radiobutton om de "onclick" the activeren als het ware.

Snappie ?

Verwijderd

je kan toch met exact dezelfde logica als waarmee je --selected-- in je radio plant, ook --style="display: block"-- in je pagina plempen?

Verwijderd

Topicstarter
Verwijderd schreef op woensdag 10 oktober 2007 @ 15:37:
je kan toch met exact dezelfde logica als waarmee je --selected-- in je radio plant, ook --style="display: block"-- in je pagina plempen?
Ik zal dat nog eens bekijken, maar dat gaat dacht ik niet omdat die radiobuttons dat ook manipuleren. Tijd geleden ook mee zitten klojoen, kan me niet meer herinneren wat ik toen moest doen, maar dat was ook iets met van die "dubbele" manieren settings met display enzo.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Verwijderd schreef op woensdag 10 oktober 2007 @ 15:32:
[...]


Het probleem is dat wanneer je met een $_GET de radiobutton selecteert, het hidden gedeelte niet tevoorschijn komt.

Je moet dus nogmaals klikken op de radiobutton om de "onclick" the activeren als het ware.

Snappie ?
Ik snap wat je bedoelt, maar als ik ook zie, dan kunnen we wellicht een optie bedenken waar je geen click hoeft te truuken ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Topicstarter
BtM909 schreef op donderdag 11 oktober 2007 @ 15:30:
[...]

Ik snap wat je bedoelt, maar als ik ook zie, dan kunnen we wellicht een optie bedenken waar je geen click hoeft te truuken ;)
Duidelijk.

Met de volgende radiobutton show of hide ik een stukje HTML, het hiden gaat natuurlijk pas werken met meerdere radiobuttons, dit is maar een stukje code.

code:
1
2
3
4
<input id="button1" name="select" type="radio" value="waarde" onclick =
"document.getElementById('field1').style.display = '';;" onchange = 

"document.getElementById('field1').style.display = '';; "/>


Stel ik wil een tabel hiden dan plaats ik dit in de table-properties:

code:
1
style="display:none;" id="field1"


Zoals je dan kunt zien werkt dit alleen op een klik.

Meer info kan ik niet direct bedenken om te geven, wat zou je eventueel nog meer willen weten ?

Verwijderd

In plaats van inline javascript zou ik een function gebruiken voor het laten zien en verbergen van die fieldsets.

Die functie kun je dan onload aanroepen met de $_GET-waarde als argument.

Verwijderd

Topicstarter
Verwijderd schreef op donderdag 11 oktober 2007 @ 20:04:
In plaats van inline javascript zou ik een function gebruiken voor het laten zien en verbergen van die fieldsets.

Die functie kun je dan onload aanroepen met de $_GET-waarde als argument.
Dat zou ik uiteindelijk als verfijning willen gaan doen, dit is misschien best een goed idee om dit dan direct in te voeren.

Nu nog even googelen hiernaar.

Verwijderd

Ik heb dit even in elkaar geflanst.

voorbeeld.php?fieldset=blaat1

HTML:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Fieldset test</title>
<style type="text/css">
fieldset {
    display:none;
}
</style>
<script type="text/javascript">
function showFS(fid){
    document.getElementById(fid).style.display='block';
}

function hideFS(fid){
    document.getElementById(fid).style.display='none';
}

function showAndClick(fid){
    showFS(fid);
    fid=fid+"-aan";
    document.getElementById(fid).checked=true;
}
</script>
</head>

<body onload="showAndClick('<?php echo($_GET['fieldset']); ?>')">

<form action="">

<input type="radio" name="blaat1-aan-uit" id="blaat1-aan"
    onclick="showFS('blaat1')"> aan<br>
<input type="radio" name="blaat1-aan-uit" id="blaat1-uit"
    onclick="hideFS('blaat1')" checked="checked"> uit<br>
<fieldset id="blaat1">
    Bla bla
</fieldset>

<br><br>

<input type="radio" name="blaat2-aan-uit" id="blaat2-aan"
    onclick="showFS('blaat2')"> aan<br>
<input type="radio" name="blaat2-aan-uit" id="blaat2-uit"
    onclick="hideFS('blaat2')" checked="checked"> uit<br>
<fieldset id="blaat2">
    Mekker mekker
</fieldset>

</form>

</body>
</html>



Het kan veel netter natuurlijk, maar dit is ongeveer wat ik bedoelde. Zie de php in de body onload.
Pagina: 1