2010-11-15 8 views
0

J'ai posé cette question un peu plus tôt et j'ai seulement pu gagner un peu de terrain. Ce que j'ai ne fonctionne toujours pas comme prévu.Comment écrire correctement cette fonction

Ce que je veux faire est de partager un pavé numérique avec 3 formes différentes. Si l'utilisateur clique sur la case «a», tous les chiffres (de la balise d'ancrage) ainsi que la mise au point devraient aller dans cette boîte de saisie. Si l'utilisateur clique sur la case «b», alors tous les chiffres (de la balise d'ancrage) ainsi que la mise au point devraient aller dans cette boîte de saisie.

Quelqu'un peut-il m'aider à le faire correctement?

function box(box) { 
    if(box == 'a') { 
    document.getElementById("a").focus(); 
    document.getElementById('a').value += '1'; 
    document.getElementById('a').value += '2'; 
    }else if(box == 'b') { 
    document.getElementById("b").focus(); 
    document.getElementById('b').value += '1'; 
    document.getElementById('b').value += '2'; 
    } 
} 

function process(val){ 
    document.getElementById('a').value += val; 
} 

Lorsque l'utilisateur clickes un de ces balises d'ancrage, je me attends à la valeur à population dans la zone d'entrée appropriée. La zone de saisie est d'abord déterminée lorsque l'utilisateur clique sur le point d'ancrage qui définit le focus dans la zone qu'ils souhaitent utiliser.

ÉTAPE 1 Choisissez la zone de saisie à utiliser et de se concentrer mis:

<a href="#" onclick="box('a')">a</a><br /> 
<a href="#" onclick="box('b')">b</a><br /> 

ÉTAPE 2 Placez les données dans la boîte:

<a href="#" onclick="process('4');">4</a> 
<a href="#" onclick="process('5');">5</a> 


<form name="a"> 
    <input type="text" id="a" /> 
</form> 
<form name="b"> 
    <input type="text" id="b" /> 
</form> 
+1

Votre question est manquant une pièce essentielle: Qu'est-ce * ne fonctionne pas * ou * fonctionne différemment * que prévu. –

Répondre

0

Gardez une variable autour de piste qui pad est sélectionné.

var selected = 'a'; 

function box(box) { 
    selected = box; 
    document.getElementById(selected).focus(); 
} 

function process(val){ 
    document.getElementById(selected).value += val; 
} 
+0

Merci Ben! Je vous remercie.. – jim

Questions connexes