meh*_*ibi 5 html javascript jsx reactjs
我用 3 个单选按钮创建了单选按钮:我想将石灰作为默认选中的单选按钮,我将石灰设置为默认值,但它不起作用。
这是我的代码我不知道如何解决我的问题。
import React, {Component} from 'react';
class App extends Component{
constructor(props){
super(props)
this.handleflavorSubmit = this.handleflavorSubmit.bind(this)
this.onChangeRadio = this.onChangeRadio.bind(this)
this.state = {value : 'lime'};
}
onChangeRadio(e){
this.setState({value : e.target.value})
}
handleflavorSubmit(e){
alert("your favorite flavor is " + this.state.value)
e.preventDefault();
}
render(){
return(
<div>
<h1>Choose your flavor:</h1>
<form onSubmit = {this.handleflavorSubmit}>
<input type="radio" checked = {this.state.value === 'grapefruit'} onChange = {this.onChangeRadio} value= "grapefruit"/>Grapefruit
<input type = "radio" checked = {this.state.value === 'lime'} onChange = {this.onChangeRadio} value = "lime"/>Lime
<input type = "radio" checked = {this.state.value === 'orange'} onChange = {this.onChangeRadio} value = "orange"/>Orange
<input type = "submit" value = "submit"/>
</form>
</div>
)
}
}
export default App
Run Code Online (Sandbox Code Playgroud)
小智 3
你的代码确实有效。您只需在返回后添加括号即可。
在 CodeSandbox 中尝试一下。这是工作代码:https://codesandbox.io/s/red-rain-r81n4
import React,{Component} from "react";
import ReactDOM from "react-dom";
import "./styles.css";
class App extends Component{
constructor(){
super()
this.handleflavorSubmit = this.handleflavorSubmit.bind(this)
this.onChangeRadio = this.onChangeRadio.bind(this)
this.state = {value : 'lime'};
}
onChangeRadio(e){
this.setState({value : e.target.value})
}
handleflavorSubmit(e){
alert("your favorite flavor is " + this.state.value)
e.preventDefault();
}
render(){
return (
<div>
<h1>Choose your flavor:</h1>
<form onSubmit = {this.handleflavorSubmit}>
<input type="radio" checked = {this.state.value === 'grapefruit'} onChange = {this.onChangeRadio} value= "grapefruit"/>Grapefruit
<input type = "radio" checked = {this.state.value === 'lime'} onChange = {this.onChangeRadio} value = "lime"/>Lime
<input type = "radio" checked = {this.state.value === 'orange'} onChange = {this.onChangeRadio} value = "orange"/>Orange
<input type = "submit" value = "submit"/>
</form>
</div>
);
}
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App/>, rootElement);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7986 次 |
| 最近记录: |