streetrobbanMedlem sedan jan. 20011 184 inlägg
Hej!
Jag har två knappar, knapp 1 och knapp 2. Knapp 1 är länkad till att öppna en nya sida (target="_blank") och knapp2 leder besökaren till en annan sida.
Jag undrar om någon kan hjälpa mig med följande. Jag vill att knapp 2 ska vara inaktiverad tills det att man trycker på knapp 1.
Tack på förhand.
voigtann1Medlem sedan juni 20018 810 inlägg
med jquery:
$("#knapp1").one('click', function() { $("#knapp2").removeAttr("disabled");});
Där du har satt i din HTML kod att #knapp2 är disabled
streetrobbanMedlem sedan jan. 20011 184 inlägg
Och hur får man in det i ett sammanhang som jag kan förstå? :) Jag har inte gjort knapp 2 disabled än. Både knapp 1 och knapp 2 är vanliga bilder som är länkade.
voigtann1Medlem sedan juni 20018 810 inlägg
#knapp1 => element som har ett id="knapp1"
#knapp2 => bör vara en input,button som kan ha disabled som ett attribut.
annars:
$("#knapp1").one('click', function( ) {
$("#knapp2").bind("click", function( ) {
/**** MAGIC ****/
});
});
Så när trycker på #knapp1 binder vi #knapp2's click-event så att den kan göra något.
streetrobbanMedlem sedan jan. 20011 184 inlägg
Hmm okej, jag har lagt in scriptet du skrev inom <header> taggen:
<script type="text/javascript">
$("#knapp1").one('click', function( ) {
$("#knapp2").bind("click", function( ) {
/**** MAGIC ****/
});
});
</script>
Och skapat två knappar enligt följande:
<input type="submit" id="knapp1" name="knapp1" value=" Skriv ut "> <input type="submit" id="knapp2" name="knapp2" value=" Gå vidare " disabled>
Är jag på rätt väg?
voigtann1Medlem sedan juni 20018 810 inlägg
jo, fast du behöver köra DOM-ready med koden om du ha det i head
$(function( ) {
$("#knapp1").one('click', function( ) {
$("#knapp2").bind("click", function( ) {
/**** MAGIC ****/
});
});
});
Sen ersätt kommentaren med något häftigare ;)
streetrobbanMedlem sedan jan. 20011 184 inlägg
Hehe okej. Som du vet voigtann är jag nollställd när det gäller javascript och jQuery så du får gärna hjälpa mig mer med koden :)
martinwahlstromMedlem sedan feb. 20111 inlägg
Duger inte vanligt javascript: ;)
<HTML>
<HEAD>
<script type="text/javascript">
function test() {
document.getElementById("knapp2").disabled=false;
}
</script>
</HEAD>
<BODY>
<input type="submit" id="knapp1" name="knapp1" value=" Skriv ut" onclick="test()">
<input type="submit" id="knapp2" name="knapp2" value=" Gå vidare " disabled>
</BODY>
</HTML>
Martin/
voigtann1Medlem sedan juni 20018 810 inlägg
Klart det gör, men jag hatar att blanda JS kod inne i HTML koden, samma sak när det gäller CSS saker.
@streetrobban vad är det som skall hända på knapp2 då?
streetrobbanMedlem sedan jan. 20011 184 inlägg
martinwahlstrom: Det där fungerade ju alldeles prima! Finns det något sätt att få in så att ett nytt fönster öppnas med en förbestämd adress samtidigt som test() körs när man trycker på knapp1?
voigtann1Medlem sedan juni 20018 810 inlägg
streetrobban skrev:
martinwahlstrom: Det där fungerade ju alldeles prima! Finns det något sätt att få in så att ett nytt fönster öppnas med en förbestämd adress samtidigt som test() körs när man trycker på knapp1?
@streetrobban, gör mig den lilla tjänst att inte skriva som Martin skriver, ha inte javascript blandat i din html kod.
Bygg hellre ut jquery (eftersom du redan kör det):
$(function( ) {
$("#knapp1").one('click', function( ) {
$("#knapp2").bind("click", function( ) {
/**** MAGIC ****/
}).removeAttr("disabled");
//Javascript open window:
window.open("minurl");
});
});
streetrobbanMedlem sedan jan. 20011 184 inlägg
voigtann1 skrev:
@streetrobban, gör mig den lilla tjänst att inte skriva som Martin skriver, ha inte javascript blandat i din html kod.
Bygg hellre ut jquery (eftersom du redan kör det):
$(function( ) {
$("#knapp1").one('click', function( ) {
$("#knapp2").bind("click", function( ) {
/**** MAGIC ****/
}).removeAttr("disabled");
//Javascript open window:
window.open("minurl");
});
});
För mig spelar det ingen roll vilken kod som används, så länge den fungerar :) Men med din kod får jag inte ihop funktionen riktigt. Kan du hjälpa mig att komplettera koden så funktionen funkar?
voigtann1Medlem sedan juni 20018 810 inlägg
Du skickar bara dina knappar, eftersom dom är submit knappar så kommer den vilja posta formuläret, vilket du inte vill, lagt upp kod: http://voigt.se/sandbox/wf/streetrobban/print.html
knapp2 vet jag inte vad du vill skall göra så jag kör bara att den inte gör något fortfarande.
streetrobbanMedlem sedan jan. 20011 184 inlägg
Oj nu är vi nästan där! Knapp2 ska bara öppna en sida när man trycker på den.
voigtann1Medlem sedan juni 20018 810 inlägg
byt ut magic till vad du vill att knapp2 skall göra när du trycker på den, om det är ett nytt fönster som skall öppnas kör du window.open eller om den skall fungera så att du gå till en sida(som en vanlig länk)så kan du köra window.location
streetrobbanMedlem sedan jan. 20011 184 inlägg
Tack för hjälpen voigtann1, det funkade ju super :)