React Base Fiddle (JSX)

Starting point for creating JSFiddles with React. This uses React with Addons.

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.24/browser.js"></script>
<script src="https://npmcdn.com/react@latest/dist/react-with-addons.js"></script>
<script src="https://npmcdn.com/react-dom@latest/dist/react-dom.js"></script>
<script src="https://facebook.github.io/react/js/jsfiddle-integration-babel.js"></script>

<div id="container">
    <!-- This element's contents will be replaced with your component. -->
</div>

CSS

td div{
  height: 30px;
  overflow:hidden;
  transition: all 0.3s ease;
}
.hide div{
  height: 0px;
}

JavaScript 1.7

var Hello = React.createClass({
  getInitialState(){
    return {
     clicked: false,
    }
  },
  rowClick(n) {
  	this.setState({
    	clicked: !this.state.clicked,
    })
  },
  render: function() {
    return <table>
  <tbody>
    <tr onClick={this.rowClick}>
      <td>
       <div>main row - onclick toggle the rows under</div></td>
      <td></td>
    </tr>
    <tr className={this.state.clicked && 'hide' }>
      <td>
      <div>show only if clicked on the row above (smoothly)</div></td>
      <td></td>
    </tr>
    <tr className={this.state.clicked && 'hide' }>
      <td><div>show only if clicked on the first row (smoothly)</div></td>
      <td></td>
    </tr>
  </tbody>
</table>
  }
});

ReactDOM.render(
  <Hello name="World" />,
  document.getElementById('container')
);