Bootstrap 获取表单提交的结果

ilmyapht  于 2022-12-08  发布在  Bootstrap
关注(0)|答案(2)|浏览(197)

我有以下形式:

<form onSubmit={this.gotEmail}>
  <div className="form-group">
    <FormControl type="text" className="form-control"/>
  </div>
  <Button className="btn btn-primary btn-large centerButton" type="submit">Send</Button>
</form>

提交时,我希望获得用户在此处写入的字段:

<FormControl type="text" className="form-control"/>

我试着这样得到它:

gotEmail: function(email) {
    console.log("Email: ", JSON.stringify(email))
}

然而,我得到这个错误:

EmailForm.jsx:9 Uncaught TypeError: Converting circular structure to JSON

当我尝试在控制台中打印email时,我得到以下信息:

(program):132 Uncaught illegal access

如何获得用户的输入?

yzckvree

yzckvree1#

在React中访问组件的HTML元素的正确方法是:

import { findDOMNode } from 'react-dom'

[...] // all your other script stuff here

render() {
  return (
    <form onSubmit={this.gotEmail}>
      <div className="form-group">
        <FormControl ref="email" type="text" className="form-control"/>
      </div>
      <Button className="btn btn-primary btn-large centerButton" type="submit">Send</Button>
    </form>
  )
}

gotEmail() {
  console.log(findDOMNode(this.refs.email).value)
}
qoefvg9y

qoefvg9y2#

在普通JavaScript中,您可能会执行以下操作:
于飞:

<form action="getInput()">
<input type="text" id="email" class="form-control"/>
</form>

JS:

function getInput(){
var email = document.getElementById("email").value;
alert(email);
}

相关问题