當我運用antd 中 radio組件的時候發現radio組件是有bug的 就是你不能給他賦予id 和 value,同時也綁定不上onclick等事件。
舉個例子:前端
能夠看到 你就算賦予了id 和value 前端頁面渲染也是不正常的 value不管賦成什麼 結果都是on
可是我還須要對他進行一些操做須要綁定他的onclick事件 因此我得解決辦法就是在radio標籤外套了一層div 綁定了id屬性,同時將onclick事件綁定在這層div上。當咱們觸發它時,經過jQuery的子選擇器找到內部radio。可是這樣作問題又來了 就是這篇文章的主題 事件冒泡
簡單來講,就是由於點擊label的時候,會觸發套在其內部的的input的click事件,致使事件再次觸發
解決辦法就是:antd
$("label").click(function (e) { if ($(e.target).is("input")) return; });
2018-2-28日更:
其實更應該從思路上解決問題,當發生事件冒泡時,咱們是否能夠將這兩個引發問題的dom節點分開成兩個div來進行處理,而不是經過js控制。
參考連接:http://blog.csdn.net/qazwsx33...dom