如果你的結構是label內寫input實現點擊文字時候input也有相應。
並且,把事件設置在了label上,那麼就會執行兩次了。
html:
<label>
<input type="checkbox"/>滬深A股</label>
jq/js:
$(document).ready(function () {
$("label").click(function (){
alert(1);
});
});
因爲:
不瞭解label的,請看:http://www.w3school.com.cn/tags/tag_label.asp
<label> 標籤爲 input 元素定義標註(標記)。
label 元素不會向用戶呈現任何特殊效果。不過,它爲鼠標用戶改進了可用性。如果您在 label 元素內點擊文本,就會觸發此控件。就是說,當用戶選擇該標籤時,瀏覽器就會自動將焦點轉到和標籤相關的表單控件上。
<label> 標籤的 for 屬性應當與相關元素的 id 屬性相同。
所以:
看到紅色部分解釋我們應該知道,當label執行click事件時,那麼它會傳遞給input再執行一次同一click事件。
jq/js:
$(document).ready(function () {
$("input").click(function (){
alert(1);
});
});
把事件放在input上,點擊文字也可以click事件執行。而且不會有重複的click事件發生。
html:
<label>
<input type="checkbox"/>滬深A股</label>
jq/js:
$(document).ready(function () {
$("label").click(function (){
alert(1);
});
});