Beste mededevelopers,

Momenteel ben ik bezig met iets met java,

En was ik bezig met een script.

Nu heb ik een select box en als je op select id 1 klikt dan showt hij een div doormiddel van jquery.

dit is het script.


$(function(){
    $("#extra_veld1").hide();
    $("#SelectId1").change(function(){
        if($("#SelectId1").val() == "1"){
            $("#extra_veld1").show();
        }
        else{
            $("#extra_veld1").hide();
        }
    });
});


Maar nu wil ik graag dat dit een link word waar ik op klik en dat dan die extra_veld1 dat die geshowt word. dus met een onclick.

Weet iemand wat ik dan moet veranderen hieraan?

Mvg,

Tim Kampherbeek
Tim Kampherbeek schreef op 14.10.2009 18:07
Jah maar wat er nu ook gebeurt is dat de pagina doorgestuurt word..

en dat wil ik niet,,

ik wil dat hij direct mijn script laat zien,,,

zoals hij dat bij de vorige ook deed.

ik klikte op die selectbox en hoppa daar stond mijn divje,, niet eerst door naar een andere pagina.

Dat stukje javascript stuurt de pagina niet door. Zoals je kunt zien is het precies hetzelfde zoals het op de jQuery site staat.
Vergeet niet dat je wel jQuery moet 'inladen'. Zie the basics.
Nou hij doet het nog steeds niet,

Dus opnieuw de vraagt.

Heeft iemand een SOORGELIJK script voor mij maar dan dat als ik op een link/plaatje klik dat hij dan showt... oftewel even dit scriptje helemaal aanpassen.


$(function(){
    $("#extra_veld1").hide();
    $("#SelectId1").change(function(){
        if($("#SelectId1").val() == "1"){
            $("#extra_veld1").show();
        }
        else{
            $("#extra_veld1").hide();
        }
    });
}); 


Bedankt
Buh, het is natuurlijk een link. Dat betekend dus dat de browser die link gewoon gaat volgen.
Als je wilt dat dat niet gebeurt dan moet je return false; toevoegen.
Dus zo:

    $("#link").click(function () {
      $("#extra_veld1").toggle();
      return false;
    });

Bij andere elementen hoeft dat dus niet. Je hoeft ook geen return false te geven als de link # is.
En nog steeds werkt het niet karl,

Als je me niet geloofd probeer het zelf dan even voordat je het post.

Want ik vraag namelijk om een javascript dat als ik op een link klik dat en DIV geshowt word. zonder de pagina te refreshen of wat dan ook.

Dat van jou dat haalt niks uit als ik het probeer.

Hoop dat iemand anders me kan helpen.

En sorry voor mijn botte gedrag maar vraag gewoon om iets en krijg 3 x een verkeerd antwoord van dezelfde persoon die altijd zegt dat ik nutteloze topics plaats.

Wellicht kan Miloan me wel verder helpen want hij blijkt hier zelf meer verstand van te hebben.

Bij voorbaard dank.

Mvg,

T. Kampherbeek
Include je de jquery-latest.js dan wel in je script?

Dit hoort gewoon te werken ..
Man man man.. wat een gedoe zeg. En dan heb ik het niet eens over JQuery.
Tim: als je met javascript bezig gaat houden dan moet je wel weten wat JavaScript is en dat je niet met de term Java aan komt omdat je denkt dat dit hetzelfde is. Als je een klein beetje de basic weet dan weet je dat Java != JavaScript is

Dus leer eerst de basis voordat je verder gaat met JS.. Zoek een tutorial en ik zie dat je de boeken al had besteld. Ga die eerst lezen.

Dus voordat je met Jquery aan de slag gaat.. ga eerst de basis leren van JavaScript


<script type="text/javascript">
function show_hide()
{
    var div = document.getElementById('tekst');
    if(div.style.display == 'none')
	{
		div.style.display = 'block'
	}
	else
	{
		div.style.display = 'none';
	}
}
</script>

<a href="#" onclick="show_hide(); return false;">Link</a>
<div style="display:none" id="tekst">Tekst</div>
Aangezien ik ook de code van dat andere scriptje had gemaakt, dacht ik, ik reageer nu ook maar hier op.

Wat er al gezegt was zou moeten werken. Maar hierbij nog een keer de code met jouw html als voorbeeld.

Javascript in je head:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
    $("#extra_veld1").hide();
    $("#SelectId1").change(function(){
        if($("#SelectId1").val() == "1"){
            $("#extra_veld1").show();
        }
        else{
            $("#extra_veld1").hide();
        }
    });
	//
	$("#Link").click(function(){
		$("#extra_veld1").toggle();
return false;
	});
});
</script>


En je html in de body:

<a href="#" id="Link">Link om div te openen</a>
<div id="extra_veld1">test</div>
Tim Kampherbeek schreef op 15.10.2009 02:30
En nog steeds werkt het niet karl,

Als je me niet geloofd probeer het zelf dan even voordat je het post.

Ik heb het dus getest, het werkt.

Tim Kampherbeek schreef op 15.10.2009 02:30
En sorry voor mijn botte gedrag maar vraag gewoon om iets en krijg 3 x een verkeerd antwoord van dezelfde persoon die altijd zegt dat ik nutteloze topics plaats.

Het klopt dat je drie keer een 'niet werkend' script hebt gekregen. Die scripts werkte wel, maar niet in jouw situatie.
Jammer genoeg ben jij niet zo impulsief om zelf te gaan kijken hoe die code werkt. Je had dan zelf kunnen vinden dat die p niet klopte, en dat daar een id van gemaakt zou moeten worden.
Wel geef ik toe dat ik er op had moeten letten dat als je een echte link gebruikt dat je dan return false geeft. Al had je zelf die oplossing ook kunnen vinden. Je wist dat je onclick kan gebruiken, dan heb je waarschijnlijk ook deze uitleg gezien.

Graag wil ik ook van je weten of je kunt snappen dat als je direct al begint dat ik zeur o.i.d. terwijl ik alleen maar één vraag stelde (waarom een nieuw topic?), alleen zeggen dat het niet werkt, zelf geen inzet toont en verwacht dat er maar even wat voor hem gemaakt wordt, dat ik dan misschien iets wat minder nauwkeurig wordt.
Ik bedoel; ik was niet helemaal juist, maar jij bent ook geen engel.
het werkt nu helemaal,

heb echter nog een vraag.


function show_hide1()
{
    var div = document.getElementById('tekst1');
    if(div.style.display == 'none')
    {
        div.style.display = 'block'
    }
    else
    {
        div.style.display = 'none';
    }
}
function show_hide2()
{
    var div = document.getElementById('tekst2');
    if(div.style.display == 'none')
    {
        div.style.display = 'block'
    }
    else
    {
        div.style.display = 'none';
    }
}
function show_hide3()
{
    var div = document.getElementById('tekst3');
    if(div.style.display == 'none')
    {
        div.style.display = 'block'
    }
    else
    {
        div.style.display = 'none';
    }
}


Nu wil ik graag dat als 1 open staat en ze op 2 klikken dat 1 weer dicht gaat en als 2 open staat en een ander word geopend dat die ook weer dicht gaat. zodat er maar 1 tegelijk open kan zijn.
Heb je zelf al wat geprobeerd?
Volgens mij heb je niks gedaan, behalve dan gezeurd dat ik zeurde of dat het niet werkt. Het is hier geen afhaalchinees.
Ik zou jQuery gebruiken in combinatie met toggle, en hide.

Reageren