React(0.13) 定义一个input组件,使其输入的值转为大写

简介: React JS function dateToString(d){ return [d.
<!DOCTYPE html>
<html>
    <head>
        <title>React JS</title>
        <script src="../build_0.13/react.js"></script>
        <script src="../build_0.13/JSXTransformer.js"></script>
        <script>
            function dateToString(d){
                return [d.getFullYear(), d.getMonth()+1, d.getDate()].join('-');
            }
        </script>
        
    </head>
    <body>
        
        
        <div id="example">
        
        </div>
        
        <script type="text/jsx">
            var MyForm = React.createClass({
                    //初始设置值
                    getInitialState:function(){
                        return {helloTo:"hello world!"};
                    },
                    //onchange事件
                    handleChange:function(event){
                        this.setState({
                            helloTo:event.target.value.toUpperCase()
                        });
                    },
                    //提交事件
                    submitHandler:function(event){
                        event.preventDefault();    //阻止默认的事件
                        alert(this.state.helloTo);
                    },
                    render:function(){
                        return (
                            <form onSubmit={this.submitHandler} >
                                <input ref="helloTo" type="text" value={this.state.helloTo}
                                    onChange={this.handleChange} />
                                <br/>
                                <button type="submit">speak</button>
                            </form>
                        );
                    }
            });
            
            //将组件加到对应的元素上
            React.render( <MyForm />, document.getElementById('example') );
    
        </script>
    </body>
</html>

注意:

  1.组件名称:第一个字母要大写,并使用驼峰法命名

  2.onchange、onsubmit事件在Render里面要使用驼峰法的命名, onChange={this.handleChange} 切忌不能写成这样 onChange="{this.handleChange}"

  3.通过event.target来访问触发实际的DOM节点,这是访问约束组件的最简单最直接的方式之一

    handleEvent:function(event){

      var DOMNode = event.target;

      var newValue = DOMNode.value;

    }

目录
相关文章
|
6月前
|
资源调度 前端开发 JavaScript
React 的antd-mobile 组件库,嵌套路由
React 的antd-mobile 组件库,嵌套路由
121 0
|
12天前
|
前端开发
如何定义和使用React泛型组件
通过合理地定义和使用React泛型组件,可以提高代码的复用性和可维护性,同时增强类型安全性,使React应用程序的开发更加高效和可靠。
31 8
|
2月前
|
前端开发 算法 JavaScript
React项目input输入框输入自动失去焦点
本文讨论了在React项目中如何处理input输入框自动失去焦点的问题,特别是在移动端开发中。文章提供了一个使用React Native的TouchableWithoutFeedback组件来监听点击事件,并在事件处理函数中通过调用Keyboard.dismiss()方法使输入框失去焦点的示例代码。这种方法可以确保在用户点击页面其他区域时,键盘能够收起,输入框失去焦点。
96 1
React项目input输入框输入自动失去焦点
|
2月前
|
前端开发
react动态生成input、select标签以及思路总结
本文介绍了在React中动态生成input和select标签的方法,包括准备数据结构、在组件挂载时动态添加状态、页面渲染以及输入处理,最后总结了实现思路。
36 1
react动态生成input、select标签以及思路总结
|
3月前
|
前端开发
React——定义组件【六】
React——定义组件【六】
31 0
|
4月前
|
JavaScript 前端开发
react18【系列实用教程】双向绑定表单 (2024最新版)含受控组件、非受控组件、单行多行输入框 input,下拉选择 select,单选 radio,多选 checkbox,标签 label
react18【系列实用教程】双向绑定表单 (2024最新版)含受控组件、非受控组件、单行多行输入框 input,下拉选择 select,单选 radio,多选 checkbox,标签 label
163 1
|
6月前
|
JavaScript 前端开发 开发者
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
深入比较Input、Change和Blur事件:Vue与React中的行为差异解析
|
6月前
react+typescript给state和props定义指定类型
react+typescript给state和props定义指定类型
93 1
|
6月前
|
存储 前端开发 中间件
React组件间的通信
React组件间的通信
52 1
|
6月前
|
前端开发 JavaScript API
React组件生命周期
React组件生命周期
119 1