Javascript 附加的表单按钮没有';单击时不会触发表单提交
考虑以下示例:Javascript 附加的表单按钮没有';单击时不会触发表单提交,javascript,reactjs,button,onsubmit,semantic-ui-react,Javascript,Reactjs,Button,Onsubmit,Semantic Ui React,考虑以下示例: import React, { Component } from 'react' import { Form } from 'semantic-ui-react' class FormExample extends Component { state = {} handleChange = (e, { name, value }) => this.setState({ [name]: value }) handleSubmit = () => thi
import React, { Component } from 'react'
import { Form } from 'semantic-ui-react'
class FormExample extends Component {
state = {}
handleChange = (e, { name, value }) => this.setState({ [name]: value })
handleSubmit = () => this.setState({ email: '', name: '' })
render() {
const { name, email } = this.state
return (
<Form onSubmit={this.handleSubmit}>
<Form.Group>
<Form.Input placeholder='Name' name='name' value={name} onChange={this.handleChange} />
<Form.Input placeholder='Email' name='email' value={email} onChange={this.handleChange} />
<Form.Button attached='bottom' content='Submit' />
</Form.Group>
</Form>
)
}
}
import React,{Component}来自“React”
从“语义ui反应”导入{Form}
类FormExample扩展组件{
状态={}
handleChange=(e,{name,value})=>this.setState({[name]:value})
handleSubmit=()=>this.setState({email:'',name:''})
render(){
const{name,email}=this.state
返回(
)
}
}
当附加了表单按钮时,单击该按钮不会导致表单提交。当attached
属性被省略时onSubmit
处理程序按预期工作
这是预期行为还是我应该在GitHub上提交错误问题?没有作为prop
附加
通过添加此属性
,您的按钮
标记将转换为div
标记。通过添加type=“submit”
也不能使用此prop
,因为它毕竟只是div
。要提交表单,我们只需要按钮
标签
最好不要在表格
中使用此附件
道具
你只能有这个
<Form.Button content='Submit' />
在你的表格里试试
<Button>Submit</Button>
提交
与html一样,默认情况下,表单中的按钮会触发表单提交事件。请将type=“submit”添加到您的提交按钮中
<Form.Group>
<Form.Input placeholder='Name' name='name' value={name} onChange={this.handleChange} />
<Form.Input placeholder='Email' name='email' value={email} onChange={this.handleChange} />
<Button type='submit'>Submit</Button>
</Form.Group>
提交
表单。按钮
没有作为属性附加
您只能使用content='Submit'
,附加的属性将不起作用
这就是正确的代码:
<Form.Button content='Submit' />
或者,如果您想要新的财产:
import { Form, Button } from 'semantic-ui-react'
<Button type="submit">Submit</Button>
从“语义ui反应”导入{Form,Button}
提交
因此,如果要导入按钮
,可以使用它并执行type=“Submit”
属性,然后在内部添加Submit
作为文本,然后结束按钮
总之,您不能在内部附加,
,因此必须将其移除,才能使其正常工作。附加不是Form.Button的有效道具。这仅适用于Button.OP询问为什么将prop
添加到表单。Button
未按预期工作。删除attached
属性会使表单提交工作正常。将type
设置为submit
并附加attached={true}
仍然无法使提交生效。所以我接受这个答案。谢谢@ravibagul91顺便说一句,Form.Button
也没有type
属性,但是Button
两者都有。当设置了attached={true}
时,添加type='submit'
仍然不起作用。当附加未设置或设置为false时,表单提交工作正常,有和没有type
prop设置。什么?为什么?您必须首先导入按钮
。这不是HTML。这是ReactJS.Yep,Form.Button
根据文档,只有as
和control
属性。但是它也没有type
属性。同时,按钮
确实同时具有类型
和附加属性()。感觉不一致。
import { Form, Button } from 'semantic-ui-react'
<Button type="submit">Submit</Button>