aha thnx tis geluktquote:Op maandag 13 februari 2006 18:07 schreef SuperRembo het volgende:
In de popup heb je window.opener, daarmee kan je bij de pagina komen die de popup geopend heeft. Dan moet je de waarden uit het popup-form overzetten naar het pagina-form.
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 | <colgroup><col width="28"><col width="28"><col width="28"> <col width="28"><col width="28"><col width="28"><col width="28"></colgroup> <tbody id="tabelnaam_collapsed" class="button"> <tr> <td colspan="7" width="168"> <a href="javascript:expand('tabelnaam');">> Tabel Naam</a> </td> </tr> </tbody> <tbody id="tabelnaam_expanded" class="button" style="display: none;"> <tr> <td colspan="7" width="168"> <a href="javascript:collapse('tabelnaam');">v Tabel Naam</a> </td> </tr> <tr class="choice"> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> </tbody> </table> |
1 2 3 4 5 6 7 8 9 10 11 | { document.getElementById( id + '_collapsed' ).style.display = 'none'; document.getElementById( id + '_expanded' ).style.display = ''; } function collapse( id ) { document.getElementById( id + '_expanded' ).style.display = 'none'; document.getElementById( id + '_collapsed' ).style.display = ''; } |
1 2 3 4 5 6 7 8 9 10 11 | <tr> <td> <table id="child"> <tr> <td><a href="javascript:alert(getParentName('child'));">klik</a></td> </tr> </table> </td> </tr> </table> |
1 |
1 |
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | var el = p_el; var parentId; while (el = el.parentNode) { if (el.nodeName == 'TABLE') { parentId = el.id; break; } } if (parentId) { alert('Parent "' + parentId + '" found for "' + p_el.id +'".'); } else { alert('No parent found for "' + p_el.id +'".'); } } |
Je kan btw ipv object.style.whatStyle ook gebruikmaken van object.className en zo meerdere style attributen ineens changen door er een andere class aan te hangen.quote:Op vrijdag 10 februari 2006 15:25 schreef mschol het volgende:
hmmm ik zit met het volgende probleem:
ik laat door Javascript een ingevulde naam checken d.m.v. een regexp maar de regexp is kennelijk niet goed (of me js is verkeerd opgesteld)
javascript:
[ code verwijderd ]
en de html pagina, form tag+ veld
[ code verwijderd ]
de naam die mag worden ingevoerd mag zijn PWA000 t/m PWA999
de regex heb ik aan gemaakt m.b.v regexbuddy
wat doe ik verkeerd?
Dank je!quote:Op woensdag 22 februari 2006 18:16 schreef SuperRembo het volgende:
Dat heeft niets met javascript te maken. Als je even googelt dan vind je zo hoe je dat voor elkaar krijgt.
Misschien toch handig om dat topic dan zelf te openen, dan houden we 't hier bij javascript. Wel zo overzichtelijkquote:Op woensdag 22 februari 2006 18:24 schreef APK het volgende:
Ik zie zo snel geen 'encoderen van Windows Media files voor dummies.'
Ik zal het morgen eens proberen.quote:Op woensdag 22 februari 2006 18:40 schreef SuperRembo het volgende:
Misschien toch handig om dat topic dan zelf te openen, dan houden we 't hier bij javascript. Wel zo overzichtelijk
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | function toggle(targetId, start, end) { for(i=start; i<=end; i++) { if (document.getElementById) { target = document.getElementById(targetId + i); target.style.visibility = (target.style.visibility == 'hidden') ? 'visible' : 'hidden'; } } } </script> <form method='post' action='index.php?content=Log in' onsubmit='return validate_form()'> <table> <tr><td>Gebruikersnaam: </td><td><input type='text' name='gebruikersnaam' maxlength=20></td></tr> <tr><td>E-mail adres: </td><td><input type='text' name='email' maxlength=32></td></tr> <tr><td>Heb je een registratienummer?</td> <td>Ja<input name='booleanregnummer' type='radio' onfocus=toggle('outside',1,2)>Nee<input name='booleanregnummer' type='radio' onfocus=toggle('outside',1,2) checked></td> </tr> <tr><td><div id='outside1' style='visibility: hidden'>Registratienummer</div></td> <td><div id='outside2' style='visibility: hidden'><input name='regnummer' type='text'></div></td> </tr> </table> <input type='submit' name='submitreg' value='Verzenden'> </form> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | for(i=start; i<=end; i++) { if (document.getElementById) { target = document.getElementById(targetId + i); target.style.visibility = bvalue ? 'visible' : 'hidden'; } } } </script> <form method='post' action='index.php?content=Log in' onsubmit='return validate_form()'> <table> <tr><td>Gebruikersnaam: </td><td><input type='text' name='gebruikersnaam' maxlength=20></td></tr> <tr><td>E-mail adres: </td><td><input type='text' name='email' maxlength=32></td></tr> <tr><td>Heb je een registratienummer?</td> <td>Ja<input name='booleanregnummer' type='radio' onfocus=toggle('outside',true,1,2)>Nee<input name='booleanregnummer' type='radio' onfocus=toggle('outside',false,1,2) checked></td> </tr> <tr><td><div id='outside1' style='visibility: hidden'>Registratienummer</div></td> <td><div id='outside2' style='visibility: hidden'><input name='regnummer' type='text'></div></td> </tr> </table> <input type='submit' name='submitreg' value='Verzenden'> </form> |
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 | { var races = new Array("Human", "Ork", "Dwarf", "Elf", "Troll"); document.write("<select name=\"playerRace\" id=\"playerRace\" onchange=\"calculateBuildingPointsRace()\">"); for (i=0;i<races.length;i++) { document.write("<option value=\"" + races[i] + "\">" + races[i] + "</option>"); } document.write("</select>"); } function calculateBuildingPointsRace() { var myRace = document.getElementById("playerRace").value; switch(myRace) { case "Human": var raceCost = 0; break case "Ork": var raceCost = 20; break case "Dwarf": var raceCost = 25; break case "Elf": var raceCost = 30; break case "Troll": var raceCost = 40; break } document.write(raceCost); } |
Thnx, het werkt inderdaad... damn dat was simpel.quote:Op zaterdag 25 februari 2006 16:07 schreef Webby het volgende:
document.write(raceCost); veranderen in: document.getElementById("IDNameVanBetreffendInputVeld").value = raceCost;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | { var attributes = new Array("bod", "agi", "rea", "str", "cha", "int", "log", "wil", "edge", "mag", "res"); for (i=0;i<attributes.length;i++) { if(document.getElementById(attributes[i]).value < 6) { var attributeCost = (parseInt(document.getElementById(attributes[i]).value) - 1)*10; window.alert(attributes[i] + "heeft als kosten" + attributeCost); var totalAttributesCost = parseInt(totalAttributesCost) + parseInt(attributeCost); } } window.alert(parseInt(totalAttributesCost)); } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | var attributes = new Array("bod", "agi", "rea", "str", "cha", "int", "log", "wil", "edge", "mag", "res"); var attributeCost = 0; var totalAttributesCost = 0; for (i = 0; i < attributes.length; i++) { if(document.getElementById(attributes[i]).value < 6) { attributeCost = (parseInt(document.getElementById(attributes[i]).value) - 1) * 10; alert(attributes[i] + "heeft als kosten" + attributeCost); totalAttributesCost += attributeCost; } } alert(totalAttributesCost); } |
1 |
Alleen een submitbutton zonder form?quote:Op zondag 26 februari 2006 03:39 schreef Nevermind het volgende:
Wat moet ik bij een form bij action of onsubmit invullen als ik niet wil dat de pagina verandert?
Dit werkt niet:
[ code verwijderd ]
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 | <body onLoad="setTimeout( 'sendRequest( \'twee.html\' )', 1500 )"> <script type="text/javascript"> ---8<--- <knip> xmlhttprequest laden function sendRequest( file ) { xmlHttp.open( "GET", file, true ); xmlHttp.onreadystatechange = getRequest; xmlHttp.send( null ); } function getRequest() { --- 8<--- <knip> bij readystate 4 het volgende uitvoeren dynContent( 'testdiv', xmlHttp.responseText ); } function dynContent( id, content ) { if( ie = false ) { if( document.getElementById ) { rng = document.createRange(); el = document.getElementById( id ); rng.setStartBefore( el ); htmlFrag = rng.createContextualFragment( content ); while ( el.hasChildNodes() ) el.removeChild( el.lastChild ); el.appendChild( htmlFrag ); } } else { document.getElementById( id ).innerHTML = content; } } </script> <div id="testdiv">één</div> </body> </html> |
1 2 | twee |
1 |
Volgens mij kan dat niet zomaar. Ik weet niet precies of er een workaround is, maar volgens mij gaat dat niet op de manier die je nu probeert...ik kan je alleen even niet verder helpen nu.quote:Op zondag 26 februari 2006 22:50 schreef Nevermind het volgende:
Nog een vraagje:
Als ik de inhoud van een DIV vervang door een stuk tekst waar een stuk javascriptcode zit, dan wordt deze niet geparsed. Moet innerHTML er niet voor zorgen dat de javascript wel geparsed wordt? Klein opzetje om het te verduidelijken:
test.html
[ code verwijderd ]
twee.html:
[ code verwijderd ]
drie.html:
[ code verwijderd ]
Ik zou willen dat er "drie" in #testdiv komt te staan, maar ik kom tot twee.Op deze manier werkt het dus niet, maar hoe wel?
Ik gebruik deze AJAX Class: http://twilightuniverse.com/projects/sackquote:Op maandag 27 februari 2006 01:10 schreef Nevermind het volgende:
Alle vragen die ik de laatste tijd stel hebben te maken met een hobbyproject waar ik al veel te lang mee bezig benIk wil een windows-achtige interface hebben, waar schermpjes gedragen kunnen
worden en scripts uitgevoerd kunnen worden zonder de pagina te refreshen. Misschien zeggen screenshots wat meer;
De eerste versie werkte met windows die een iframe bevatten, en werkte vrij redelijk, maar werd erg traag met veel schermpjes en was niet erg crossbrowser-vriendelijk. Toen besloot ik over te gaan op een hidden iframe die de inhoud van alle schermpjes veranderde, maar daar liep ik ook tegen veel vreemde crossbrowserfouten aan. En nu ben ik bezig met een xmlHttprequest-versie die tot op heden erg crossbrowservriendelijk is en snel, alleen nu loop ik weer tegen allerlei limitaties en vreemde browserspecifieke fouten aan.
Als het eenmaal af is kan het voor een hele hoop dingen gebruikt worden, een CMS en een mailclient bijvoorbeeld. En ik wil het graag als interface hebben om een hoop dingen van mijn thuisserver te regelen. Maar tot op heden is er weinig resultaat en al vele uren werk
Die ie = false regel is inderdaad fout werkt nog steeds in IE overigens, maar verandert verder niks aan de vraag. Ik zal het eens met eval proberen
Ik kan zo snel niet vinden in welke browsers het zou moeten werken, maar als ik even snel de code door kijk dan werkt het iig niet in IE5.0. Verder wel aardig opgezet, alleen niet allemaal even efficient gecodeerd.quote:Op maandag 27 februari 2006 09:28 schreef Webby het volgende:
[..]
Ik gebruik deze AJAX Class: http://twilightuniverse.com/projects/sack
In Combinatie met deze DOM scripts: http://www.scottandrew.com/weblog/articles/cbs-events
Geheel crossbrowser en erg multifunctioneel inzetbaar.
En weer opgelost.quote:Op zaterdag 25 februari 2006 19:21 schreef Webby het volgende:
Je definineert de vars attributeCost en totalAttributeCost elke keer opnieew. defineer ze aan het begin en gebruik ze daarna.
Probeer hem eens zo:
[ code verwijderd ]
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 | function displaySkillGroups() { var skillGroups = new Array ("Choose skillgroup", "Atheletics", "Biotech", "Close Combat", "Conjuring", "Cracking", "Electronics", "Firearms", "Influence", "Mechanic", "Outdoors", "Sorcery", "Stealth", "Tasking"); document.write("<select name=\"playerClass\" id=\"playerClass\" onchange=\"addRow()\">"); for (i=0;i<skillGroups.length;i++) { document.write("<option value=\"" + skillGroups[i] + "\">" + skillGroups[i] + "</option>"); } document.write("</select>"); } //genereer nieuwe tabel rij function addRow() { var x=document.getElementById('skillGroups').insertRow(1); var y=x.insertCell(0); y.innerHTML="..."; } //html code wat ik wil: <table id="skillGroups" border="1"> <tr> <td> <script type="text/javascript"> displaySkillGroups(); </script> </td> </tr> </table> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |