/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
radio og disabled
Fra : Vagn Kofoed


Dato : 25-01-04 07:08

Jeg har 3 radiogrupper lvl1,lvl2 og lvl3 der alle kan have værdierne 1,2,3.
Hvis værdien 1 i første gruppe er checked skal værdierne 1 i de to sidste
gruppe være disabled.

Det hele går ud på at sortere/gruppere en query til statistik med GROUP BY.
Hvis man vælger 'måned' i første niveau kan man ikke vælge det samme i de
efterfølgende. Cirka ligesom når man indenfor en gruppe klikker et sted, så
flytter markeringen fra et andet sted.

Hvordan kan jeg på clientside sætte 'disabled' ind på de relevante buttons?

Vagn Kofoed



 
 
Jens Peter Karlsen (25-01-2004)
Kommentar
Fra : Jens Peter Karlsen


Dato : 25-01-04 17:42

Det tror jeg ikke du kan med radiobuttons. Prøv checkfelter i stedet.

Regards Jens Peter Karlsen. Microsoft MVP - Frontpage.

On Sun, 25 Jan 2004 07:07:46 +0100, "Vagn Kofoed"
<vagn.koFJERNfoed@mail.dk> wrote:

>Jeg har 3 radiogrupper lvl1,lvl2 og lvl3 der alle kan have værdierne 1,2,3.
>Hvis værdien 1 i første gruppe er checked skal værdierne 1 i de to sidste
>gruppe være disabled.


Lasse Reichstein Nie~ (25-01-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 25-01-04 18:35

"Vagn Kofoed" <vagn.koFJERNfoed@mail.dk> writes:

> Jeg har 3 radiogrupper lvl1,lvl2 og lvl3 der alle kan have værdierne 1,2,3.
> Hvis værdien 1 i første gruppe er checked skal værdierne 1 i de to sidste
> gruppe være disabled.

Hvorfor disabled? Kan der ikke bare være valgt en anden?

Denne kode sørger for at et antal radiogrupper, der started med ikke
at have samme radioknap valgt, bliver ved med det:
---
<script type="text/javascript">
function checkedRadio(group) {
for (var i=0;i<group.length;i++) {
if (group[i].checked) {return i;}
}
return NaN;
}

function priorityRadio(form,thisControlName,newChecked /*, ... */) {
var groups = new Array();
for(var i=3;i<arguments.length;i++) {
var controlName = arguments[i];
var group = form[controlName];
var checkedNum = checkedRadio(group);
groups[checkedNum] = group;
}
var oldChecked = groups.length;
for(var i=0;i<groups.length;i++) {
if (!groups[i]) {oldChecked = i;break;}
}
if (oldChecked == newChecked || oldChecked == -1) {return;}
var minChecked = Math.min(newChecked,oldChecked);
var maxChecked = Math.max(newChecked,oldChecked);
var direction = (oldChecked<newChecked)?-1:1;
for(var i=newChecked; i != oldChecked;i+=direction) {
groups[i][i+direction].checked = true;
}
}
</script>
---
Eksempel på hvordan den bruges:
---
<form action="">
<input type="radio" name="lvl1" value="val1" checked="checked"
onclick="priorityRadio(this.form,'lvl1',0,'lvl2','lvl3');">
<input type="radio" name="lvl1" value="val2"
onclick="priorityRadio(this.form,'lvl1',1,'lvl2','lvl3');">
<input type="radio" name="lvl1" value="val3"
onclick="priorityRadio(this.form,'lvl1',2,'lvl2','lvl3');">
<br>
<input type="radio" name="lvl2" value="val1"
onclick="priorityRadio(this.form,'lvl2',0,'lvl1','lvl3');">
<input type="radio" name="lvl2" value="val2" checked="checked"
onclick="priorityRadio(this.form,'lvl2',1,'lvl1','lvl3');">
<input type="radio" name="lvl2" value="val3"
onclick="priorityRadio(this.form,'lvl2',2,'lvl1','lvl3');">
<br>
<input type="radio" name="lvl3" value="val1"
onclick="priorityRadio(this.form,'lvl3',0,'lvl2','lvl1');">
<input type="radio" name="lvl3" value="val2"
onclick="priorityRadio(this.form,'lvl3',1,'lvl2','lvl1');">
<input type="radio" name="lvl3" value="val3" checked="checked"
onclick="priorityRadio(this.form,'lvl3',2,'lvl2','lvl1');">
</form>
---
Den virker også med flere grupper, men der skal være lige så mange værdier
i hver gruppe som der er grupper, og hver gruppe skal have en valgt fra start.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Vagn Kofoed (25-01-2004)
Kommentar
Fra : Vagn Kofoed


Dato : 25-01-04 22:40

Tusind tak Lasse

Det var lige hvad jeg kunne bruge.

Hyggelig hilsen
Vagn



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste