Just nu i M3-nätverket
Gå till innehåll

Hjälp mig med att göra en frågesport!


MrHall

Rekommendera Poster

Hjälp!

 

Jag vill programera ett testformulär som räknar ihop poäng...

 

Ex.

 

Fråga 1:

 

bla, bla, bla?

 

Alternativ:

1 2 3 5 6 7

(Radioknappar)

 

Fråga 2:

 

bla, bla, bla?

 

Alternativ:

1 2 3 5 6 7

(Radioknappar)

 

 

Resultat: X

(olika värden tilldelas radioknapparna...resultatet adderar dessa värden.)

 

Hur gör jag!?!?

 

/Ola

 

Länk till kommentar
Dela på andra webbplatser

DanielForPresident

Det svåra med textfält är ju att användaren måste skriva exakt rätt svar för att du ska kunna räkna rätt poäng. Det är ju skillnad om en besökare skriver "GBG" eller "Göteborg" fast samma stad menas och är rätt. Bättre då att bara ha flervals frågor där man väljer ett av fem alternativ eller så.

 

Länk till kommentar
Dela på andra webbplatser

Det svåra med textfält

 

förvissor är det sant det du skriver, men MrHall pratar om radioknappar :)

 

Länk till kommentar
Dela på andra webbplatser

Micke_skane

Här är en variant!

 

[log]

<script type="text/javascript">
var radio1_value="";
var radio2_value="";

function check() {
 if(radio1_value=="" || radio2_value=="")
   alert("båda måste väljas");
 else {
   return summera();
 }
}

function summera() {
 var summa = parseInt(radio1_value) + parseInt(radio2_value);
   document.getElementById('summa').value=summa;
 return false;
}
</script>

<body>
<form action="#" onsubmit="javascript:return check()";>
<input type="Radio" name="ett" onclick="radio1_value='1'"><input type="Radio" name="ett" onclick="radio1_value='2'"><br />
<input type="Radio" name="tva" onclick="radio2_value='1'"><input type="Radio" name="tva" onclick="radio2_value='2'"><br />
<input type="Text" id="summa"><br />
<input type="Submit" value="Summera">
</form>
</body>

[/log]

 

[inlägget ändrat 2006-04-03 10:43:39 av Micke_skane]

Länk till kommentar
Dela på andra webbplatser

DanielForPresident

När jag läste inlägget igen nu insåg jag det :) Tyckte först att det såg ut som att han skulle ha båda delarna. My bad.

 

Länk till kommentar
Dela på andra webbplatser

Fan!

 

Det var helt precis vad jag var ute efter!

 

Perfekt! Tack!!!

 

Du ska få adressen till sidan det ska ligga på!

 

http://www.smartutbildning.se

 

Det kommer att ligga under Våra tjänster - Salutogenes (SMART)

 

/Ola

 

Länk till kommentar
Dela på andra webbplatser

Micke_skane

Det var ju bra att det blev som du hade tänkt dig :)

Såg att ni kommer ifrån Skåne :thumbsup::)

 

Kom på att jag missade en liten detalj i check-funktionen!

 

Ändra:

if(radio1_value=="" || radio2_value=="")
   alert("båda måste väljas");  
else {
   return summera();
}

 

till:

if(radio1_value=="" || radio2_value==""){
 alert("båda måste väljas");
 return false;
}
else {
 return summera();
}

 

[inlägget ändrat 2006-04-03 23:10:35 av Micke_skane]

Länk till kommentar
Dela på andra webbplatser

En sak till jag kom på...

 

Det lilla programmet Du gjorde...

Om man inte svarar på alla frågor så får man ju börja om.

 

Kan man göra samma funktion, men UTAN att samtliga radioknappar nollställs?

D.v.s. att man får ett meddelande att någon fråga inte är besvarad.

Man klickar OK, sen kan man bara leta upp vilken fråga det var (utan att behöva besvara alla frågor på nytt, eftersom alla tidigare svar är nollställda...)

 

/MVH Ola

 

 

Länk till kommentar
Dela på andra webbplatser

Micke_skane

Nu är jag inte med riktigt :)

Är det inte så här du vill ha det?

http://user.tninet.se/~gbs951f/test/frage_tavling.html

 

Då stannar värdet kvar för dem som är ifyllda och ett felmeddelande kommer upp ifall någon fråga är obesvarad.

 

EDIT:

Jag kommer inte att vara i forumet förrän tidigast tisdag.

 

[inlägget ändrat 2006-04-06 21:54:36 av Micke_skane]

Länk till kommentar
Dela på andra webbplatser

Här kommer en lite bättre utmaning...

 

Jag har tänkt göra ett relativt enkelt spel som går att spela online.

Såhär hade jag tänkt mig:

 

1. Kommer till en startsida där man kan läsa spelreglerna.

 

2. Man klickar på en länk för att registrera sitt namn och ett lösenord.

 

3. Man loggar in med sitt namn och lösen.

 

4. Kommer till en annan startsida där man väljer mellan spel1 eller spel2.

 

5. spel1:

 

6. Först väljer man antal spelare.

 

7. Varje spelare skriver in sitt namn och väljer kön.

 

8. Man gör en del val innan spelet startar.

- Hur mycket "spelpengar" varje spelare ska börja med (valfri summa

kan skrivas in).

- Vilken svårighetsgrad man ska starta på (radioknappar)

- En del andra val ska också göras här (checkboxar). Dessa är

kopplade till varje spelare och därmed oberoende av varandra.

 

9. Väljer svårighetsgrad (1-5) och hur länge man vill spela (minuter).

Sen klickar man på "Starta spelet".

 

10. Nu kommer en alternativfråga (fråga 1) som besvaras av spelare 1

(radioknappar). Frågan är slumpvis utvald av datorn beroende på

gällande svårighetsgrad).

 

11. Spelare 1 gissar sen hur stor sannolikhet det är att spelare 2

kan gissa vad spelare 1 svarade på frågan (1-5) (fråga 2).

(radioknappar)

 

12. Spelare 2 kan nu inte se vad spelare 1 svarade på någon av

frågorna.

 

13. Spelare 2 ska nu gissa vad spelare 1 svarde på båda frågorna.

 

14. Om spelare 2 gissar rätt på fråga 1 måste spelare 1 göra ett val:

1 - böta en bestämd summa (beroende på gällande svårighetsgrad)

av sina spelpengar.

2 - avstå ifrån något av sina andra saker (som valdes i början med

checkboxar).

3 - han kan också välja att utföra ett uppdrag (se 17)

 

OBS! Om spelaren inte har tillräckligt med spelpengar eller några saker att avstå ifrån, måste alltså alternativ 3 väljas.

 

15. Om spelare 2 gissar fel på fråga 1 måste spelare 2 göra ett val

(samma som 14)

 

16. Om spelare 2 gissar rätt på fråga 1 och fråga 2 måste spelare 2 göra

ett val:

1 - Ta emot en summa spelpengar (beroende på gällande

svårighetsgrad).

2 - Ta emot en lägre summa av spelare 1 (beroende på gällande

svårighetsgrad).

3 - Överraskning (se 18).

 

17. Om spelare 2 gissar fel på båda frågorna måste spelare 2 utföra ett

uppdrag. Uppdraget väljs ut av datorn, slumpvis.

Datorn väljer ut uppdraget beroende på innehav av saker (som

valdes i början), kön, svårighetsgrad och alla andra saker som valdes

i början. Instruktioner till uppdragen kan visas i form av text, film,

ljud, bild o.s.v.

 

18. Överraskning väljs slumpvis ut av datorn och kan vara:

- Att bli tvungen att utföra ett uppdrag.

- Att bli tvungen att utföra flera uppdrag.

- Att samtliga spelare måste utföra ett uppdrag.

- Att böta spelpengar.

- Att avstå från en sak (som valdes i början).

- Att avstå från flera saker (som valdes i början).

- Att få köpa tillbaka någon av sina saker (som valdes i början).

Priset bestäms av gällande svårighetsgrad.

- Att att en annan spelare ska utföra ett uppdrag.

- Att att en annan spelare måste avstå från en sak (som valdes i

början).

o.s.v.

 

19. Nu går turen över till nästa spelare (enligt ovan, se 10).

 

20. Efter ett visst antal frågor eller minuter höjs svårighetsgraden.

I början valde man hur länge man ville spela. När det är 10 minuter

kvar blir det automatiskt den högsta svårighetsgraden.

 

21. För varje uppdrag man utför får man poäng. Uppdrag som utförs vid

en högre svårighetsgrad ger också högre poäng.

 

22. Vinnaren är den som har mest poäng när tiden ute.

 

23. Föroraren måste utföra ett specialuppdrag.

Detta uppdraget bestäms också av datorn på samma grunder som

tidigare uppdrag (se 17). Med en viktig skillnad, detta sista uppdrag

är ett specialuppdrag, vilket innebär att det bara kan väljas av datorn

om spelet är slut och man har förlorat.

 

/Ninja

 

 

[inlägget ändrat 2006-04-08 08:47:25 av MrHall]

Länk till kommentar
Dela på andra webbplatser

Under alerten om att de ska besvara alla frågor saknas ett

"return false".

 

Titta på Micke_skanes sida igen, så ser du.

Det finns inte med i koden han först har postat här på sidan, men det syns på hans sida, där du kan ta Visa källa och se koden.

 

//Jenny

 

Edit: förtydligande om var man ska titta.

 

[inlägget ändrat 2006-04-08 12:53:49 av Jenny R]

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

I funktionen Check() ändra följande

else {
return false
return summera();

 

till

 

else {
return summera();

 

Länk till kommentar
Dela på andra webbplatser

Ok.

 

Men problemet var att om man inte besvarade alla frågor

så kommer ju en alert "Du måste besvara alla frågor".

 

Sen får man börja om.

Formuläret är då helt nollställt.

 

Jag vill att de svar man redan givit ska bli kvar.

Annars måste man svara på alla frågor en gång till om man bara

råkar glömma en fråga.

 

Hajar??

 

/Ola

 

Länk till kommentar
Dela på andra webbplatser

Hur går det med denna utmaningen??

 

Från och med steg 6 är viktigast just nu...

 

/Ola

 

[inlägget ändrat 2006-04-09 17:44:22 av MrHall]

Länk till kommentar
Dela på andra webbplatser

Anjuna Moon

Sorry, my bad, läste inte tillräckligt många inlägg tillbaka.

Ändra funktionen Check() igen, till:

function check() {
if(radio11_value=="" || radio21_value=="" || radio31_value=="" || radio41_value=="" || radio51_value=="" || radio61_value=="" || radio71_value=="" || radio81_value==""
|| radio91_value=="" || radio101_value=="" || radio111_value=="" || radio121_value=="" || radio131_value=="" || radio141_value=="" || radio151_value=="" || radio161_value==""
|| radio171_value=="" || radio181_value=="" || radio191_value=="" || radio201_value=="" || radio211_value=="" || radio221_value=="" || radio231_value=="" || radio241_value==""
|| radio251_value=="" || radio261_value=="" || radio271_value=="" || radio281_value=="" || radio291_value=="") {
alert("Du måste besvara alla frågor");
return false;
} else {
return summera();
}
}

 

Länk till kommentar
Dela på andra webbplatser

Tack!

 

Nu funkar det ju!!!

 

Har Du försökt Dig på min andra lilla utmaning?

Den som heter ...spin off...

 

???

 

Lite mer att bita i!

 

/Ola

 

Länk till kommentar
Dela på andra webbplatser

Det var ju så Micke skrivit på sin sida.. fast med bara 2 radioknappar... för hans sida funkar så som MrHall önskat ;)

 

 

 

Länk till kommentar
Dela på andra webbplatser

Jo, det är sant...

Men jag missade det.

 

Jag är novis på området, som ni förstår...

 

Finns det inga förslag på mitt andra problem?

...spin off...

 

/Ola

 

Länk till kommentar
Dela på andra webbplatser

Micke_skane

Hej igen,

 

Här har det hänt saker i tråden :)

Vet inte om du kollade på länken jag gav dig men det är bra att det löste sig.

 

Tack för poängen :thumbsup:

 

Angående ditt andra "projekt" så är det betydligt mer avancerat och kräver betydligt mer i kod-väg och då är det inte bara javascript som krävs. Har du riktigt tur så är där någon som har så mycket tid över för att hinna hjälpa dig, själv har jag inte det.

Ifall du försöker själv, så lycka till!

Lycka till annars med :)

 

Länk till kommentar
Dela på andra webbplatser

Ok. Det var ju synd.

 

Men Du kanske har tid med att hjälpa mig med någon av punkterna??

 

...hoppas...

 

;)

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...