|
Posted by bill on 08/07/07 13:13
VooDoo wrote:
> Hello,
> I have a little script that display or hide input field depending on the
> choice of a select.
> It is working fine, but i can not initialise the default value of the select
> and have it display the correct input box...
>
> main file:
> [CODE]<script language="JavaScript" src="modules/metro/combos.js"
> type="text/javascript"> </script>
> ...
> <select name="Ctrltype" id="Ctrltype" onChange="newmenuderoulant(this,'<?php
> echo $IdEquipCtrl; ?>')">
> <option>--select--</option>
> <option value="Lab"<?php if ($rowcontrol[Ctrltype]=="Lab") {echo "
> selected";} ?>>Lab (Min-Max)</option>
> <option value="Maintenance"<?php if
> ($rowcontrol[Ctrltype]=="Maintenance") {echo " selected";} ?>>Maintenance
> (?)</option>
> </select>
> ....
> <td> <div id="combo2"></div> </td>[/CODE]
>
> The ajax looks working fine, display is ok, when you switch the select to
> one value to another, but not at the first call of the page...
>
> Is the error coming from this line:
> http.onreadystatechange = displaylist2; ??????
>
> ajax file combos.js :
> [CODE]function creerConnexion() {
> var connexion;
> connexion = window.XMLHttpRequest
> ? new XMLHttpRequest() :
> new ActiveXObject("Microsoft.XMLHTTP");
> return connexion;
> }
>
> var http = creerConnexion();
>
> function newmenuderoulant(objselect,idctrl) {
>
> var Ctrltype =objselect.options[objselect.selectedIndex].value;
> //alert(Ctrltype);
> if (idctrl!=null)
> http.open('get', 'modules/metro/ajax.php?Ctrltype='+Ctrltype+'&am
> p;idctrl='+idctrl);
> else http.open('get', 'modules/metro/ajax.php?Ctrltype='+Ctrltype);
>
> http.onreadystatechange = displaylist2;
> http.send(null);
>
> }
>
> function displaylist2(){
> if(http.readyState == 4){
> var response = http.responseText;
> document.getElementById("combo2").innerHTML=response;
> }
> else
> {
> /*alert('Etape '+http.readyState);*/
> }
> }[/CODE]
>
> in the ajax.php file i just create the html for the field that goes in the
> div id combo2 ...
>
> Thanks for your support!
> ++
> VooDoo
>
>
It appears that you need to have a "selected" for the default
value of the selection box. You could just put it in the html
that is displayed before the user changes things.
bill
[Back to original message]
|