0
Ich erstelle eine einfache Tabelle, die bestimmte Werte berechnen wird. Ich benutze reagieren und habe zwei Eingabewerte, die in Betracht gezogen werden. Ich möchte, dass es bei submit angezeigt wird, aber wenn ich auf "submit" drücke, scheint es die Werte nicht zu erhalten und es zeigt nichts an.handleSubmit nicht auf den Wert von Eingabe zugreifen
export default class name extends Component {
constructor(props) {
super(props);
this.state = {
value: '',
calls: ''
};
this.handleInputChange = this.handleInputChange.bind(this);
}
handleInputChange(event) {
const target = event.target;
const value = target.name;
const calls = target.name;
this.setState({
value: value,
calls: value,
});
event.preventDefault();
}
handleSubmit(event) {
document.getElementById("subsmonth").innerHTML = this.state.value * 10;
document.getElementById("usecost").innerHTML = this.state.calls * 0.03;
document.getElementById("monthCost").innerHTML = (this.state.calls * 0.03) + (this.state.value * 10);
document.getElementById("yearCost").innerHTML = ((this.state.calls * 0.03) + (this.state.value * 10) * 12);
event.preventDefault();
}
render() {
return (
<div className="cl-product cl-full-width">
<form onSubmit={this.handleSubmit}>
<label>
Phone users:
<input type="number" name="users" value={this.state.value} onChange={this.handleInputChange} />
</label>
<label>
Total calls per month:
<input type="number" name="calls" value={this.state.calls} onChange={this.handleInputChange} />
</label>
<input type="submit" value="Submit" />
</form>
<p> Subscriptions per month</p>
<div id="subsmonth"></div>
<p>Usage costs per month* - *Excluding calls to 08 numbers (at 10ppm)</p>
<div id="usecost"></div>
<p> Monthly Cost</p>
<div id="monthCost"></div>
<p>Annual Cost</p>
<div id="yearCost"></div>
</div>
)
}
}
Wie erkenne ich den Eingangswert und zeige ihn an?