React 和多个表单字段

2024-03-21

我正在读书关于“onChange”的文档 http://facebook.github.io/react/docs/forms.html#controlled-components我很好奇如果我的论坛有多个字段(如选择框、复选框、文本区域和输入)我会做什么?我是否只是做类似的事情:

 getInitialState: function() {
    return {textArea: 'Hello!', input: 'World', ...};
  },

到初始状态,然后使用相同的概念来处理该字段的变化?


@FakeRainBrigand 的回答非常酷。

我想分享一个 JavaScript 风格的(使用高阶函数),更短:

/** @jsx React.DOM */

var App = React.createClass({
  getInitialState: function () {
    return {
      username: '',
      password: ''
    }
  },
  handleChange: function (key) {
    return function (e) {
      var state = {};
      state[key] = e.target.value;
      this.setState(state);
    }.bind(this);
  },
  render: function(){
    console.log(JSON.stringify(this.getFormData(), null, 4));
    return (
      <div>
        <form>
          Username: <input 
                value={this.state.username} 
                onChange={this.handleChange('username')} />
          <br />
          Password: <input type="password"
                value={this.state.password} 
                onChange={this.handleChange('password')} />
        </form>

        <pre>{JSON.stringify(this.getFormData(), null, 4)}</pre>
      </div>
    );
  }
});

React.renderComponent(<App />, document.body);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 和多个表单字段 的相关文章

随机推荐

  • 获取 CN1 上没有时间的当前日期

    我在没有时间的情况下获取日期时遇到很大问题 我想将时间设置为 00 00 以便我可以检查日期差异 到目前为止我尝试的步骤 SimpleDateFormat dateFormat new SimpleDateFormat dd MM yyyy
  • 如何设置SMO ScriptingOptions以保证表的精确副本?

    我正在尝试做的事情 使用 C 创建 SQL 脚本来创建exact现有表的副本 我的问题 您将如何定义 scriptingOptions 中的选项以确保生成的脚本将创建 100 精确的表副本 有 78 个选项 目前尚不清楚如何执行此操作 最初
  • 将 ODP.NET 12 (VS2012) 连接到 Oracle 数据库 11 时出现 ORA 03134 错误

    当尝试使用 ODP NET 12 从 VS2012 连接到 Oracle 9 2 时 我收到以下消息 ORA 03134 不再支持与此服务器版本的连接 我已经安装了 ODP NET 11 但遇到了同样的错误 尽管与 Toad 的连接正常 有
  • 查询返回没有记录显示在我的网页上

    我有一个网站 我正在其中运行以下代码
  • 如何在node.js中处理stdout

    我试图自动化每次在服务器上测试应用程序和网站时所经历的过程 我目前正在nodejitsu上运行 当我测试了某些东西并且它可以在我的本地计算机上运行时 我要做的下一件事是 打开我的 package json 文件 删除域字段并将名称和子域更改
  • Spring 4 二进制文件下载

    我已经有一段时间没有下载spring了 我正在研究 gradle 但似乎还没有掌握它的窍门 所以我想使用 java Spring 4 和 ant 创建一个新的 spring 框架项目 我似乎找不到下载 Spring 4 二进制文件的地方 他
  • java.lang.ClassNotFoundException:com.mysql.jdbc.Driver。 [复制]

    这个问题在这里已经有答案了 我正在使用 Java Eclipse 连接 MySQL 数据库 但遇到以下错误 错误信息 无法连接到数据库java lang ClassNotFoundException com mysql jdbc Drive
  • 如何使用 JSON 数据递归填充 TreeView

    我有一个winforms树视图 我可以自动读取数据 一个等于key的节点 以及一个等于value的节点 但是当读取对象类型时 它里面的值不会是对象的子对象节点 对象的键 也许我无法很好地解释 这是屏幕截图和我的方法 Layer0 需要位于纹
  • 获取通用接口的所有实现类型

    我试图使用以下代码获取 IEntityModelBuilder 的所有实现 但它返回一个空集合 public class EntityFrameworkDbContext DbContext constructor s and entiti
  • SSL 认证适用于本地主机,但不适用于计算机名称或 IP

    我们有一个在服务器上运行的 Web 应用程序 它通过 XDomainRequest 发布 http 请求 因为 IE9 有很多客户端计算机都有一个控制台应用程序通过套接字侦听器侦听端口 客户打开 Web 应用程序 IE9 浏览器 当他们单击
  • :after 和 ::after 有什么区别? [复制]

    这个问题在这里已经有答案了 它说区别在于 after是CSS2 而 after是CSS3 还有更重要的区别吗 我尝试过谷歌搜索 但冒号似乎放弃了搜索 伪元素在 CSS2 中用单个冒号表示 但在 CSS3 中已更改 为了区分伪类和伪元素 出于
  • 使用 jq 分配多个输出变量

    我正在尝试使用jq解析来自的信息TVDB api https api thetvdb com swagger 我需要提取几个字段并将值分配给我可以继续在我的应用程序中使用的变量bash脚本 我知道我可以通过 bash 轻松地将输出分配给一个
  • Java 脚本警报 R 遇到致命错误。此会话已终止

    我经常使用 RStudio 一切都运行顺利 但最近我的 Windows 严重崩溃 必须恢复到之前的状态 此后 当我打开 RStudio 时 我的项目无法打开广告 反复显示错误Java 脚本警报 R 遇到致命错误 本次会议已终止 我确信在 W
  • Symfony 所有可用内核参数的列表,如 %kernel.debug%

    如何获取可在配置文件中使用的所有内核参数的列表 例如 在 config yml 中 我知道我可以访问 kernel debug 它返回 true 或 false 具体取决于 app php 或 app dev php 文件中 AppKern
  • C 中的双指针和三指针

    我有一个小程序 如下所示 该程序是为了更好地理解 C 中的指针以及变量在内存中的排列方式 include
  • Java Swing JScrollPane 行号故障

    我在 JScrollPane 中有一个简单的 JEditorPane 它在左侧显示行号 它工作得很好 除了当您将窗口移出屏幕并再次将其拉回来时 当您停止拖动时它看起来像这样 有任何想法吗 我是否需要监听移动 拖动事件并在某处调用重绘 重新验
  • 用户警告:Pandas 不允许通过新属性名称创建列

    我被我的熊猫脚本困住了 实际上 我正在使用两个 csv 文件 一个输入文件和另一个输出文件 我想复制两列的所有行并想要进行计算 然后将其复制到另一个数据框 输出文件 各列如下 lat long PHCount latOffset 1 lon
  • 如何将 flutter CameraImage 转换为具有正确颜色和旋转的 png 或 jpg?

    我正在使用camera颤振库和startImageStream控制器的方法 每 X 毫秒我都会收到一个CameraImage输入并希望将其保存为 jpg png 文件 我正在使用一些在网上找到的代码 但它有两个问题 它是灰度的并且没有任何颜
  • 如何在 xampp windows 中使用 CRON?逐步在开发中使用[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 应采取哪些步骤xampp codeigniter 使用 cron 以及如何让 cron 调用我们的函数XAMPP Windows 我们需要下载任何 e
  • React 和多个表单字段

    我正在读书关于 onChange 的文档 http facebook github io react docs forms html controlled components我很好奇如果我的论坛有多个字段 如选择框 复选框 文本区域和输入