Hej!
Har ca 31 checkboxar som har namn 2004-03-01 > 2004-03-31. Jag vill med en checkbox att alla dessa ska fyllas i. Dock är där fler checkboxar på sidan så jag vill bara att alla med 03 på just 2004-xx-01 stället kryssas i.
Nåt som vet hur?
14 svar · 353 visningar · startad av Jymdis
Hej!
Har ca 31 checkboxar som har namn 2004-03-01 > 2004-03-31. Jag vill med en checkbox att alla dessa ska fyllas i. Dock är där fler checkboxar på sidan så jag vill bara att alla med 03 på just 2004-xx-01 stället kryssas i.
Nåt som vet hur?
Dock är där fler checkboxar på sidan så jag vill bara att alla med 03 på just 2004-xx-01 stället kryssas i.
Que?
Vill du att endast checkboxar med namn i serien "2004-03-01" till "2004-03-31" ska fyllas i?
Exempelvis ja :)
Det viktiga är att alla checkboxar som har 03 på position 6 till 7 bytas ut så att säga.
Det ska gärna vara dynamiskt så jag kan göra så på flera olika månader så att säga :)
<script type="text/javascript">
function setAllChecked(toCheck, monthStr){
var inputs = document.getElementsByTagName("INPUT");
for(var i=0; i<inputs.length; i++){
if(inputs[i].name && inputs[i].name.substr(5,2) == monthStr)
inputs[i].checked = toCheck;
}
}
</script>
...
<form>
<p>
<label>
<input type="checkbox" onclick="setAllChecked(this.checked, '03')" />
Markera samtliga
</label>
</p>
<p>
<input type="checkbox" name="2003-03-01" /> Ja<br />
<input type="checkbox" name="2003-03-02" /> Ja<br />
<input type="checkbox" name="2003-03-03" /> Ja<br />
<input type="checkbox" name="2003-04-01" /> Nej<br />
<input type="checkbox" name="2003-04-02" /> Nej<br />
<input type="checkbox" /> Nej<br />
<input type="checkbox" name="kallejohansson" /> Nej
</p>
</form>
Funkar perfa tack! Vågar man nu fråga om det går att göra med dropdown menyer?
Samma sak med att alla i en serie ska ändras, till samma värde som en har.
Kan du visa hur select-menyerna ser ut, så blir det lättare.
Sure thing!
<select name='2004-04-01'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select>
Om vi fortsätter på dectgaps kod:
<script type="text/javascript">
function setAllChecked(toSelect, monthStr, value){
var selects = document.getElementsByTagName("SELECT");
for(var i=0; i<selects.length; i++){
if(selects[i].name && selects[i].name.substr(5,2) == monthStr)
selects[i].options[value].selected = toSelect;
}
}
</script>
...
<form>
<p>
<label>
<input type="checkbox" onclick="setAllChecked(this.checked, '03', 13)" />
Markera samtliga
</label>
</p>
<p>
<select name='2003-03-01'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2003-03-02'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2003-03-03'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2004-04-01'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select name='2004-04-02'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select name='kallejohansson'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej
</p>
</form>
?
:)
Nästan, det var motsvarande värde i en select box - inte checkbox =) En select box ska styra många alltså :)
Skulle vara intressant om du förklarade lite närmare vad du är ute efter och vad du gör.
PDahlen:
kan jag tyvärr inte göra.
Jymdis skrev:
Nästan, det var motsvarande värde i en select box - inte checkbox =) En select box ska styra många alltså :)
Så om man väljer det femte alternativet i den styrande menyn så ska det femte alternativet i alla understyrda menyer väljas?
Finns det i så fall alltid lika många alternativ i de olika menyerna, så man inte försöker välja ett alternativ oms inte finns?
dectgap:
precis så, det finns alltid lika många alternativ och rätt angående styrande menyn. men det ska bara påverka dom som har månad tre fortfarande (exempelvis)
Då fortsätter jag på Peter S kod :)
<script type="text/javascript">
function setSelects(toSelect, monthStr){
var selects = document.getElementsByTagName("SELECT");
for(var i=0; i<selects.length; i++){
if(selects[i].name && selects[i].name.substr(5,2) == monthStr)
selects[i].options[toSelect].selected = true;
}
}
</script>
...
<form>
<p>
<label>
<select name='2003-03-01' onchange="setSelects(this.selectedIndex, '03')">
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select>
Markera samtliga
</label>
</p>
<p>
<select name='2003-03-01'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2003-03-02'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2003-03-03'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Ja<br />
<select name='2004-04-01'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select name='2004-04-02'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej<br />
<select name='kallejohansson'>
<option>0</option>
<option selected>1</option>
<option >2</option>
<option >3</option>
<option >4</option>
<option >5</option>
<option >6</option>
<option >7</option>
<option >8</option>
<option >9</option>
<option >10</option>
<option >11</option>
<option >12</option>
<option >13</option>
<option >14</option>
<option >15</option>
</select> Nej
</p>
</form>
Tackar så mycket dectgap, du har varit oväderlig!