这可能已经回答了,但是我找不到关于捕获用户输入并将数据提交到服务器的POST请求中的任何在线信息。
我正在使用Material UI / React / JavaScript来实现。
<TextField
id="outlined-email-input"
label="email name"
type="email name"
name="email name"
autoComplete="email name"
margin="normal"
variant="outlined"
value={this.state.name}
onChange={this.handleChange('name')}
/>
我还有另一个下拉选择框,允许用户在四个输入之间进行选择。
<FormControl>
<InputLabel
ref={ref => {
this.InputLabelRef = ref;
}}
htmlFor="outlined-password-selection"
>
Password
</InputLabel>
<Select
value={this.state.age}
onChange={this.handleSubmit}
input={
<OutlinedInput
labelWidth={this.state.labelWidth}
name="Password"
id="outlined-age-simple"
/>
}
>
<MenuItem value="BLUE">BLUE</MenuItem>
<MenuItem value="PINK">PINK</MenuItem>
<MenuItem value="GREEN">GREEN</MenuItem>
<MenuItem value="YELLOW">YELLOW</MenuItem>
</Select>
</FormControl>
基本上,我希望用户输入其电子邮件并选择一个密码,然后在POST请求中使用此信息。为了简化此过程,我想捕获用户输入,然后只对它们进行console.log()。我该怎么做?
答案 0 :(得分:1)
您可以创建一个controlled Form并将一个for (int j = 0; j < 10; j++)
{
string line = "";
for (int i = 0; i <= a.Length - 1; i++)
{
if (a[i] >= 10 * (10 - j))
{
line = line+"*";
}
else
{
line = line+"p";
}
}
Console.WriteLine(line);
}
事件处理程序附加到表单。提交表单后,您将在处理程序中拥有所有表单值,并且可以触发POST请求。
这是一个完整且有效的React示例:
onSubmit
class Form extends React.Component {
constructor(props) {
super(props);
this.state = {}
this.handleInputChange = this.handleInputChange.bind(this)
this.handleSubmit = this.handleSubmit.bind(this)
}
handleSubmit(event) {
console.log('Form data:', this.state)
event.preventDefault()
}
// Registering and setting Form fields values and names dynamically
handleInputChange(event) {
const target = event.target
const value = target.type === 'checkbox' ? target.checked : target.value
const name = target.name
this.setState({
[name]: value
})
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<label>
Email:
<input
name="email"
type="text"
value={this.state.email}
onChange={this.handleInputChange} />
</label>
<br />
<label>
Password:
<input
name="password"
type="password"
value={this.state.password}
onChange={this.handleInputChange} />
</label>
<br />
<button type="submit">Submit</button>
</form>
)
}
}
ReactDOM.render(
<Form />,
document.getElementById('container')
)