2016-05-20 10 views
0

Dies ist ein sehr einfaches Beispiel. Ich habe ein Formular, und ich brauche den Wert eines ausgeblendeten Feld so ref Ich brauche zu verwenden:React Refs 'Wert wird nicht angezeigt

<form> 
<input ref="num" type="hidden" name="amount" value="99"/> 
</form> 

var number = this.refs.num.value; 

console.log(number); // nothing 
console.log(this.refs.num); // shows the field 

Wie man den Wert mit ref bekommen?

+0

'this.refs.num.value' korrekt ist. Könnten Sie Ihrem Code etwas mehr Kontext geben? Wo versuchst du 'this.refs' zu fassen? –

+0

@BradColthurst Von einer Funktion. 'foo: function() {...}' – Sylar

+0

Und wo rufst du die Funktion an? –

Antwort

0

Ich glaube, Sie Wert zu erhalten, vor dem Rendern, versuchen Sie dies:

handleSubmit(e) { 
    if (e) { 
    e.preventDefault(); 
    } 
    var value = this.refs.num.value; 
    console.log(value); 
} 

render() { 
    console.log(this.refs.num ? this.refs.num.value : ''); 
    return (
    <form> 
     <input ref="num" type="hidden" name="amount" value="99" /> 
     <a onClick={this.handleSubmit.bind(this)}>submit</a> 
    </form> 
); 
} 

Ausgang auf den ersten leeren String sein würde und 99 nach machen:

+0

Hallo. Wie bekomme ich die 99, wenn ich meine Funktion anrufe? – Sylar

+0

https://codepen.io/Crema/pen/yOdqpO?editors=1011 auf diesem CodePen Ich habe kein Problem, den Wert von einer Funktion – Crema

+0

Ich habe eine handleSubmit-Funktion – Janom