Ciao a tutti,
ho una form con vari input, i quali vengono visualizzati ogni volta che viene inserito il dato nel precedente input. Per visualizzare input 2 devo inserire (e validare) i valori nell'input 1, per l'input 3 devo inserire nell'input 2, e cosi' via...
Il problema nasce nell'impostare il focus sull'input successivo a quello in cui sto scrivendo.
Il focus infatti si sposta sulla barra degli indirizzi del navigatore.
Come posso risolvere?
Grazie in anticipo
Qui il codice js
Qui il codice html da dove chiamo la funzione (dove plan_name sarebbe l'input 1 e plan_description l'input 2). Chiaramente ci sono altri input...Codice PHP:function goToNextStep(iTagId,sNextStep,sNextTag,sValidate){
oTag=document.getElementById(iTagId);
if(!oTag) return;
sValue=(oTag.options)? oTag.options[oTag.selectedIndex].value:oTag.value;
if(sValidate){
if(!validateExp(sValue,sValidate))
return alert('<?=_ERROR_WRONG_VALUE?>');
}
if(trim(sValue)){
fnShowHidde(sNextStep,'');
if(sNextTag){
document.getElementById(sNextTag).style.visibility = 'visible';
document.getElementById(sNextTag).focus();
}
}else
fnShowHidde(sNextStep,'none');
}
Codice PHP:<tr id='step1' >
<td><?=_NAME?></td>
<td><input type="text" id="plan_name" <?=$readonly?> value="<?=$aPlan['plan_name']?>" onblur="goToNextStep(this.id,'step2','plan_description');"></td>
</tr>
<tr id='step2' <?=$display?> >
<td><?=_DESCRIPTION?></td>
<td><input type="text" id="plan_description" name="plan_description" <?=($sAction=='edit')?'':$readonly?> value="<?=$aPlan['plan_description']?>" onblur="goToNextStep(this.id,'step3','state_id');"></td>
</tr>

Rispondi quotando
