How to render elements inside a particular div in reactjs? -
i have list of dropdowns rendered.
<ul> <li id="list_1"> <select> <option>---</option> <option>1</option> <option>2</option> <option>3</option> </select> </li> <li id="list_2"> <select> <option>---</option> <option>4</option> <option>5</option> <option>6</option> </select> </li> </ul>
on selecting option dropdown.i render span element onclick method binded , div element shown below.
<ul> <li id="list_1"> <select> <option>---</option> <option>1</option> <option>2</option> <option>3</option> </select> <span onclick={this.getdropdown}> (+) </span> <div></div> </li> <li id="list_2"> <select> <option>---</option> <option>4</option> <option>5</option> <option>6</option> </select> <span onclick={this.getdropdown}> (+) </span> <div></div> </li> </ul>
result 1: if option value 1 selected first dropdown , (+) clicked li element id="list_1".i must result shown below.
<ul> <li id="list_1"> <select> <option>---</option> <option>1</option> <option>2</option> <option>3</option> </select> <span onclick={this.getdropdown}> (+) </span> <div> <select> <option>---</option> <option>a</option> <option>b</option> </select> </div> </li> <li id="list_2"> <select> <option>---</option> <option>4</option> <option>5</option> <option>6</option> </select> <span onclick={this.getdropdown}> (+) </span> <div></div> </li> </ul>
result 2: if option value 5 selected second dropdown , (+) clicked li element id="list_2".i must result shown below.
<ul> <li id="list_1"> <select> <option>---</option> <option>1</option> <option>2</option> <option>3</option> </select> <span onclick={this.getdropdown}> (+) </span> <div></div> </li> <li id="list_2"> <select> <option>---</option> <option>4</option> <option>5</option> <option>6</option> </select> <span onclick={this.getdropdown}> (+) </span> <div> <select> <option>---</option> <option>x</option> <option>y</option> <option>z</option> </select> </div> </li> </ul>
note: li id values added reference.li elements have no id's.
the problem when rendering components have explicitly mention elements have rendered.like
reactdom.render("<app/>",document.getelementbyid("container"))
.here<div>
in dropdown rendered doesn't have id.so if add id<div id="container"></div>
.the dropdown overwritten.
you can value dropdown, , return different views based on like:
render: function(){ this.state.dropdown? return(//render no dropdown) : return(//render dropdown.) }
Comments
Post a Comment