Met jQuery variabelen aanpassen

Status
Niet open voor verdere reacties.

JorritOvereem

Nieuwe gebruiker
Lid geworden
22 jan 2013
Berichten
3
Ik heb voor de school de opdracht gekregen om een voetbalpoule te maken. Ik heb voor de makkelijkheid gekozen voor een keuzelijst met daar de teams er in.
Als je een team selecteert moet automatisch de score worden gewijzigd van de deelnemers.

dit is de HTML
HTML:
<label for="team" class="label">2de plek</label>
<select name='team' class="options"  title="Voer een team in">
<option>Kies een team</option>
<option class='groepA'>NED</option>
<option class='groepA'>DUI</option>
<option class='groepA'>ITA</option>
<option class='groepA'>FRA</option>
</select>

<div id="blok1">
	<div class="tekst">

	</div>
</div>
 
Laatst bewerkt:
Ik heb zelf al bedachten om de punten toe te kennen aan de spelers door middel van een array een aantal if statements.

[js]
var gok = [
['Karin', 0, 'FRA', 'DUI', 'ZWE', 'ESP', 'HUN', 'GRE', 'ZWI', 'POR', 'DUI', 'HUN', 'NED', 'GRE', 'ZWE', 'POR', 'ZWI', 'ESP', 'DUI', 'NED', 'ZWE', 'ESP', 'DUI', 'ZWE', 'ZWE', 'DUI'],
['Piet', 0, 'ITA', 'NED', 'ZWE', 'ESP', 'HUN', 'GRE', 'ZWI', 'CZR', 'NED', 'HUN', 'ITA', 'GRE', 'ZWE', 'CZR', 'ZWI', 'ESP', 'HUN', 'GRE', 'ZWE', 'ESP', 'GRE', 'ESP', 'ESP', 'GRE'],
['Henk', 0, 'NED', 'FRA', 'ZWE', 'BEL', 'HUN', 'RUS', 'ZWI', 'POR', 'FRA', 'HUN', 'NED', 'RUS', 'ZWE', 'POR', 'ZWI', 'BEL', 'FRA', 'ZWE', 'NED', 'BEL', 'ZWE', 'NED', 'ZWE', 'NED'],
['Hanna', 0, 'FRA', 'DUI', 'ZWE', 'ESP', 'HUN', 'GRE', 'ZWI', 'POR', 'DUI', 'HUN', 'NED', 'GRE', 'ZWE', 'POR', 'ZWI', 'ESP', 'DUI', 'NED', 'ZWE', 'ESP', 'DUI', 'ZWE', 'ZWE', 'DUI'],
['Dirk', 0, 'FRA', 'ITA', 'ZWE', 'ESP', 'RUS', 'TUR', 'ZWI', 'POR', 'FRA', 'TUR', 'ITA', 'RUS', 'ZWE', 'POR', 'ZWI', 'ESP', 'TUR', 'POR', 'RUS', 'ESP', 'TUR', 'RUS', 'RUS', 'TUR'],
['Suze', 0, 'NED', 'DUI', 'ZWE', 'ESP', 'HUN', 'GRE', 'ZWI', 'POR', 'DUI', 'HUN', 'NED', 'GRE', 'ZWE', 'POR', 'ZWI', 'ESP', 'DUI', 'NED', 'ZWE', 'ESP', 'DUI', 'ZWE', 'ZWE', 'DUI'],
['Tom', 0, 'ITA', 'NED', 'ZWE', 'ESP', 'HUN', 'GRE', 'ZWI', 'CZR', 'NED', 'HUN', 'ITA', 'GRE', 'ZWE', 'CZR', 'ZWI', 'ESP', 'HUN', 'GRE', 'ZWE', 'ESP', 'GRE', 'ESP', 'ESP', 'GRE'],
['Bianca', 0, 'NED', 'FRA', 'ZWE', 'BEL', 'HUN', 'RUS', 'ZWI', 'POR', 'FRA', 'HUN', 'NED', 'RUS', 'ZWE', 'POR', 'ZWI', 'BEL', 'FRA', 'ZWE', 'NED', 'BEL', 'ZWE', 'NED', 'ZWE', 'NED'],
['Erwin', 0, 'ITA', 'NED', 'ZWE', 'SLO', 'RUS', 'TUR', 'POR', 'CZR', 'NED', 'RUS', 'ITA', 'TUR', 'ZWE', 'CZR', 'POR', 'SLO', 'TUR', 'RUS', 'ZWE', 'POR', 'TUR', 'POR', 'POR', 'TUR'],
['Gerard', 0, 'FRA', 'ITA', 'ZWE', 'ESP', 'RUS', 'TUR', 'ZWI', 'POR', 'FRA', 'TUR', 'ITA', 'RUS', 'ZWE', 'POR', 'ZWI', 'ESP', 'TUR', 'POR', 'RUS', 'ESP', 'TUR', 'RUS', 'RUS', 'TUR'],
];

var _groupAw = 'NED';
var _groupAr = 'DUI';

var _groupBw = 'ZWE';
var _groupBr = 'ESP';

var _groupCw = 'HUN';
var _groupCr = 'GRE';

var _groupDw = 'ZWI';
var _groupDr = 'POR';

var qf1team1 = '';
var qf1team2 = '';

var qf2team1 = '';
var qf2team2 = '';

var qf3team1 = '';
var qf3team2 = '';

var qf4team1 = '';
var qf4team2 = '';

var halfA1 = '';
var halfA2 = '';

var halfB1 = '';
var halfB2 = '';

var Final1
var Final2 = '';

var Winner = '';
var Runner_Up = '';

for(var i=0; i<gok.length; i++){
var player = gok[0];
var points = gok[1]
var _gwA = gok[2];
var _grA = gok[3];
var _gwB = gok[4];
var _grB = gok[5];
var _gwC = gok[6];
var _grC = gok[7];
var _gwD = gok[8];
var _grD = gok[9];
var _qf1t1 = gok[10]
var _qf1t2 = gok[11]
var _qf2t1 = gok[12]
var _qf2t2 = gok[13]
var _qf3t1 = gok[14]
var _qf3t2 = gok[15]
var _qf4t1 = gok[16]
var _qf4t2 = gok[17]
var _hfa1 = gok[18]
var _hfa2 = gok[19]
var _hfb1 = gok[20]
var _hfb2 = gok[21]
var _f1 = gok[22]
var _f2 = gok[23]
var _win = gok[24]
var _runup = gok[25]
;

if(_groupAw == _gwA){
points+=5;
}
if(_groupAr == _grA){
points+=3;
}

if(_groupBw == _gwB){
points+=5;
}
if(_groupBr == _grB){
points+=3;
}

if(_groupCw == _gwC){
points+=5;
}
if(_groupCr == _grC){
points+=3;
}

if(_groupDw == _gwD){
points+=5;
}
if(_groupDr == _grD){
points+=3;
}

if(qf1team1 == _qf1t1){
points+=10;
}
else if(qf1team2 == _qf1t2){
points+=10;
}
if(qf2team1 == _qf2t1){
points+=10;
}
else if(qf2team2 == _qf2t2){
points+=10;
}
if(qf3team1 == _qf3t1){
points+=10;
}
else if(qf3team2 == _qf3t2){
points+=10;
}
if(qf4team1 == _qf4t1){
points+=10;
}
else if(qf4team2 == _qf4t2){
points+=10;
}
if(halfA1 == _hfa1){
points+=25;
}
else if(halfA2 == _hfa2){
points+=25;
}
if(halfA1 == _hfb1){
points+=25;
}
else if(halfA2 == _hfb2){
points+=25;
}
if(Final1 == _f1){
points+=35;
}
else if(Final2 == _f2){
points+=35;
}
if(Winner == _win){
points+=40;
}
if(Runner_Up == _runup){
points+=20;
}
else {
points;
}
document.write(player+' '+points+' punten'+'</br>');
}[/js]

De variable _groupAw is nu ingevuld, maar de bedoeling is dat deze waarden aan variabelen toegekend word door html option selectie.

MVG Jorrit
 
Laatst bewerkt door een moderator:
Je wilt een actie uit laten voeren wanneer er iets geselecteerd wordt in de dropdown lijkt mij.

Dus dat event moet je afvangen.
[js]
$(document).ready( function()
{
$("select[name=team]").on(
'change',
function()
{
alert($(this).children('option:selected').val());
}
);
});
[/js]
 
Deze code werkt. Hij geeft alerts als ik de opties activeer. Maar ik wil nou og zeg maar die als ik de opties activeer dat ie punten gaat toekennen aan de spelers. Door middel de opties als waarden voor variabelen te gaan gebruiken. Moet ik dan iets met Class van de opties gaan dan of?
 
Volgens mij kan je punten toekenning een aardig stuk efficiënter.

Zodra je veel van dezelfde code aan het schrijven bent dan moet je gaan kijken of dat makkelijker kan.
Een welbekende principe binnen programmeren: Don't Repeat Yourself (DRY)

Je zult moeten kijken wat je wilt controleren wanneer een optie is geselecteerd, dus wat kan de selectie teruggeven en tegen wat kun je dat vergelijken?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan