2017-06-11 8 views
0

父のonClick関数を無視して、子のonclick関数(jQueryや角を使用しない)のみを使用するにはどうすればよいですか?親のonClickを無視するreactJS

<div onclick="alert('US')"> country 
 
    <div onclick="alert('NY')">city</div> 
 
</div>

答えて

2

あなたは、イベントオブジェクト上のstopPropagationを呼びたいです。

https://developer.mozilla.org/en/docs/Web/API/Event/stopPropagation

これは、同様に親のハンドラにバブルアップされているイベントを停止します。

ここではインラインクリックハンドラと連携していますが、読みやすくするために関数に取り込むことをお勧めします。いずれかのインラインまたは好ましく関数で

<div onclick="alert('US')"> country 
 
    <div onclick="event.stopPropagation(); alert('NY');">city</div> 
 
</div>

+0

ありがとう。それは反応して動作していない。 – roi

+0

http://jsfiddle.net/aj5rebL5/ここで、Reactで動作するJSfiddleを簡単に紹介します。 – AHB

0

コールe.stopPropagation()

handleClick(e, text){ 
    e.stopPropagation(); 
    alert(text); 
} 

render(){ 
    return (
     <div onClick={this.handleClick.bind(this, 'US')}> country 
      <div onClick={this.handleClick.bind(this, 'NY')}}>city</div> 
     </div> 
    ) 
} 
関連する問題