Entwickler-Ecke

Programmiersprachen (Client) - Radiogroup ItemIndex


Petermännchen - Mo 12.10.09 09:31
Titel: Radiogroup ItemIndex
Hallo beisammen,

ich tu mich ein wenig schwer mit der Radiogroup- Komponente. Vielleicht könnt Ihr mir mal auf die Sprünge helfen.

Also ich hab zwei Radiogrouups (RadioGroup1 und RadioGroup2), welche abhängig vom Datum vorbelegt sein sollen.
RadioGroup2 hat drei Einträge (2008-2009-2010) und soll mit 2009, also ItemIndex 1 vorbelegt werden.
Radiogroup1 hat 12 Einträge (1-12) und soll mit ItemIndex 9 vorbelegt werden.

Hier die Definition der RadioGroup2:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
<table id="Panel6_table"  width="185"   height="29"  border="0"  cellpadding="0" cellspacing="0"     style=" border: 1px solid ; "   >
<tr>
<td valign="top">
<div id="RadioGroup2_outer" style="Z-INDEX: 0; LEFT: 1px; WIDTH: 180px; POSITION: absolute; TOP: 0px; HEIGHT: 26px">
<table id="RadioGroup2_table" cellpadding="0" title="" cellspacing="0" width="180" style=" font-family: Verdana; font-size: 12px;  height:24px;width:180px;table-layout:fixed" ><tr>
<td width="20" height="24">
<input type="radio" id="RadioGroup2_0" name="RadioGroup2" value="0"    tabindex="0"   />
</td><td align="Left" width="40\ height="24" style="overflow:hidden;white-space:nowrap">
<span id="RadioGroup2_0_caption"  style="white-space:nowrap" onclick="return RadioGroupClick(document.forms[0].RadioGroup2, 0);"  style=" font-family: Verdana; font-size: 12px;  " >2008</span>
</td>
<td width="20" height="24">
<input type="radio" id="RadioGroup2_1" name="RadioGroup2" value="1"    tabindex="0"   />
</td><td align="Left" width="40\ height="24" style="overflow:hidden;white-space:nowrap">
<span id="RadioGroup2_1_caption"  style="white-space:nowrap" onclick="return RadioGroupClick(document.forms[0].RadioGroup2, 0);"  style=" font-family: Verdana; font-size: 12px;  " >2009</span>
</td>
<td width="20" height="24">
<input type="radio" id="RadioGroup2_2" name="RadioGroup2" value="2"    tabindex="0"   />
</td><td align="Left" width="40\ height="24" style="overflow:hidden;white-space:nowrap">
<span id="RadioGroup2_2_caption"  style="white-space:nowrap" onclick="return RadioGroupClick(document.forms[0].RadioGroup2, 0);"  style=" font-family: Verdana; font-size: 12px;  " >2010</span>
</td>
</tr>
</table>


und so versuche ich ItemIndex zu setzen:


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
function AuswertungJSLoad($sender, $params)
{

?>
//Javascript-Quelltext hier hinzufügen

var jetzt = new Date();
var DieserMonat = jetzt.getMonth() + 1;
var DiesesJahr = jetzt.getYear()-100;
var DieserTag = jetzt.getDate();
if (DiesesJahr == 8)
{
alert(0);
}
else
if (DiesesJahr == 9)
{
alert('*');
document.getElementById('RadioGroup2').ItemIndex = 1;
alert('**');
}



Das zweite alert wird nicht ausgeführt. Also muss in der Zeile davor ein Fehler stecken.

Danke für eure Zeit

Gruß

Peter


JüTho - Mo 12.10.09 10:10

Hallo Peter und :welcome:

Bitte benutze die Code-Markierung des Forums, dann liest sich dein Beitrag erheblich besser. Das kannst du auch nachträglich ändern: Beitrag mit dem Schere-Button öffnen, Textbereich markieren, "Bereiche" öffnen, in der ComboBox die passende Codierung auswählen, Plus-Button drücken, zweiten Textbereich markieren, andere Codierung wählen, Plus-Button, Text Absenden.

Zur Sache kann ich nichts sagen, weil ich mit PHP nichts zu tun habe. Jürgen


Petermännchen - Mo 12.10.09 12:33

Hallo Jürgen,

danke für den Hinweis. Sieht dich gleich viel besser aus!

Gruß

Peter

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Also etwas weiter bin ich dank einem anderen Forum.

Die Zeile zum Ansprechen der Groupbox (die den Fehler erzeugte) heisst jetzt so:


Quelltext
1:
2:
document.getElementsByName('RadioGroup2')[0].ItemIndex = 1;
//document.getElementsByName('RadioGroup2')[0].ItemIndex = 1;


Nun wird kein Fehler mehr produziert, jedoch die Box auch nicht vorbelegt. (In beiden Versionen nicht)
Noch jemand eine Idee?

Gruß

Peter


Tintenblut - Mo 12.10.09 15:53

Hallo Peter,

leider habe ich auch nichts mit PHP zu tun.
Aber mir sieht das eher wie ein Vergleich als nach einer Zuweisung aus.

Vielleicht mal

Quelltext
1:
2:
document.getElementsByName('RadioGroup2')[0].ItemIndex = 1;
//document.getElementsByName('RadioGroup2')[0].ItemIndex = 1;


durch


Quelltext
1:
2:
document.getElementsByName('RadioGroup2')[0].ItemIndex := 1;
//document.getElementsByName('RadioGroup2')[0].ItemIndex := 1;


ersetzen?

Christian~


Petermännchen - Mo 12.10.09 16:37

Hallo Christian,

der Quelltext ist javascript. Und die Zuweisungen := sind Delphi bzw. Pascal, aber nicht PHP oder JS.
Das Problem war, dass ItemIndex nicht funktioniert.

War?
Ja, ich hab die Lösung bekommen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
var jetzt = new Date();
var DieserMonat = jetzt.getMonth() + 1;
var DiesesJahr = jetzt.getYear()-100;
var DieserTag = jetzt.getDate();
if (DiesesJahr == 8)
{
alert(0);
}
else
if (DiesesJahr == 9)
{
alert('*');
document.getElementsByName('RadioGroup2')[0].checked = false;
document.getElementsByName('RadioGroup2')[1].checked = true;
document.getElementsByName('RadioGroup2')[2].checked = false;
alert('**');
}


Vielen Dank an Novi und Christian aus dem Entwicklerforum.

Gruß an alle

Peter