フォーカスされたときにReactjsで入力内のすべてのテキストを選択するにはどうすればいいですか? 質問する

フォーカスされたときにReactjsで入力内のすべてのテキストを選択するにはどうすればいいですか? 質問する

例えば:コードペン

var InputBox = React.createClass({
  render: function() {
    return (
      <input className="mainInput" value='Some something'></input>
    )
  }
});

ベストアンサー1

機能コンポーネント:

const handleFocus = (event) => event.target.select();
const Input = (props) => <input type="text" value="Some something" onFocus={handleFocus} />

ES6 クラスコンポーネント:

class Input extends React.Component {
    handleFocus = (event) => event.target.select();

    render() {
        return (
            <input type="text" value="Some something" onFocus={this.handleFocus} />
        );
    }
}

React.createClass:

React.createClass({
    handleFocus: function(event) {
      event.target.select();
    },

    render: function() {
      return (
        <input type="text" value="Some something" onFocus={this.handleFocus} />
      );
    },
})

おすすめ記事