首頁 web前端 js教程 為什麼jquery使用click綁定的事件無效?

為什麼jquery使用click綁定的事件無效?

Jun 27, 2017 am 10:14 AM
click jquery 為什麼 使用

jquery使用click綁定的事件無效

$(this).children(":last").prev().after("<div class=&#39;bounty-add&#39;><a target=&#39;_blank&#39; href=&#39;bounties.php#/p=add&XID=" + playerId + "&#39;>[Bounty]</a></div>"); 
$(this).children(":last").prev().after("<div class=&#39;info-add&#39;><a href=&#39;#&#39;>[Refresh]</a></div>");        
$("div.bounty-add").css(addStyle);
$("div.info-add").css(addStyle);
         
         
$(this).children(":last").prev().children("a").click(function() {
   alert("Hello");
});
登入後複製

相關基本程式碼如上,Refresh這個a元素可以順利獲取,但就是綁定的click事件無效,在chrome「開發者工具」裡"Elements"的「Event Listeners」也找不到有效綁定。
上邊基本程式碼所加入的dom都有效,外層是兩個each循環,不過感覺應該沒啥影響,所有程式碼都能順利執行,包括綁定這一步。就是執行完畢之後去點那個a元素無效,也找不到綁定了這個function。 。 。 。 。 。 。

$(this).children(":last").prev().children("a").on("click",function() {
   alert("Hello");
});
登入後複製
登入後複製

on我也試過,一樣無效,好像這兩個基本上一樣?
因為a元素本身就有可點選屬性,所以點擊之後,還是會回應其原始的事件,例如href=‘#’,就會在網址列最後加上一個#。 。 。 。不知道會不會是因為原始事件涵蓋了後加的事件? 。 。 。 。 。

你之前的綁定是

$(this).children(":last").prev().children("a").on("click",function() {
   alert("Hello");
});
登入後複製
登入後複製

與普通click綁定一樣
試試這樣綁定

$(this).on("click",".info-add a",function() {
   alert("Hello");
});
登入後複製

你的元素是動態生成的嗎?
如果是的話用live或delegate綁定

live jquery1.9就移除了啊,現在倒不是找不到元素或無法綁定,而是綁定了之後無效。
我直接把a改成p元素,click listeners裡面也有,但是那個alter("hello");怎麼樣都無法觸發。 。 。 。 。 。

首先,使用firebug查看是否頁面出現了腳本錯誤
再次,確認你的程式碼找到了a元素
最後。你可以使用

$(document).on("click",".info-add",function(){
alert("ok")
})
登入後複製

如果再不行,請發完整的程式碼給我

#

以上是為什麼jquery使用click綁定的事件無效?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Navicat查看MongoDB數據庫密碼的方法 Navicat查看MongoDB數據庫密碼的方法 Apr 08, 2025 pm 09:39 PM

直接通過 Navicat 查看 MongoDB 密碼是不可能的,因為它以哈希值形式存儲。取回丟失密碼的方法:1. 重置密碼;2. 檢查配置文件(可能包含哈希值);3. 檢查代碼(可能硬編碼密碼)。

如何在父分類的存檔頁面上顯示子分類 如何在父分類的存檔頁面上顯示子分類 Apr 19, 2025 pm 11:54 PM

您想了解如何在父分類存檔頁面上顯示子分類嗎?在自定義分類存檔頁面時,您可能需要執行此操作,以使其對訪問者更有用。在本文中,我們將向您展示如何在父分類存檔頁面上輕鬆顯示子分類。為什麼在父分類存檔頁面上顯示子分類?通過在父分類存檔頁面上顯示所有子分類,您可以使其不那麼通用,對訪問者更有用。例如,如果您運行一個關於書籍的WordPress博客,並且有一個名為“主題”的分類法,那麼您可以添加“小說”、“非小說”等子分類法,以便您的讀者可以

SQL刪除行後如何恢復數據 SQL刪除行後如何恢復數據 Apr 09, 2025 pm 12:21 PM

直接從數據庫中恢復被刪除的行通常是不可能的,除非有備份或事務回滾機制。關鍵點:事務回滾:在事務未提交前執行ROLLBACK可恢復數據。備份:定期備份數據庫可用於快速恢復數據。數據庫快照:可創建數據庫只讀副本,在數據誤刪後恢復數據。慎用DELETE語句:仔細檢查條件,避免誤刪數據。使用WHERE子句:明確指定要刪除的數據。使用測試環境:在執行DELETE操作前進行測試。

centos7如何安裝mysql centos7如何安裝mysql Apr 14, 2025 pm 08:30 PM

優雅安裝 MySQL 的關鍵在於添加 MySQL 官方倉庫。具體步驟如下:下載 MySQL 官方 GPG 密鑰,防止釣魚攻擊。添加 MySQL 倉庫文件:rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm更新 yum 倉庫緩存:yum update安裝 MySQL:yum install mysql-server啟動 MySQL 服務:systemctl start mysqld設置開機自啟動

Navicat查看SQLite數據庫密碼的方法 Navicat查看SQLite數據庫密碼的方法 Apr 08, 2025 pm 09:36 PM

摘要:Navicat無法查看SQLite密碼,因為:SQLite沒有傳統的密碼字段。 SQLite的安全性依賴於文件系統權限控制。如果忘記了文件密碼,則無法找回(除非數據庫加密,則需要密鑰)。

Centos停止維護2024 Centos停止維護2024 Apr 14, 2025 pm 08:39 PM

CentOS將於2024年停止維護,原因是其上游發行版RHEL 8已停止維護。該停更將影響CentOS 8系統,使其無法繼續接收更新。用戶應規劃遷移,建議選項包括CentOS Stream、AlmaLinux和Rocky Linux,以保持系統安全和穩定。

oracle數據庫的語句怎麼寫 oracle數據庫的語句怎麼寫 Apr 11, 2025 pm 02:42 PM

Oracle SQL語句的核心是SELECT、INSERT、UPDATE和DELETE,以及各種子句的靈活運用。理解語句背後的執行機制至關重要,如索引優化。高級用法包括子查詢、連接查詢、分析函數和PL/SQL。常見錯誤包括語法錯誤、性能問題和數據一致性問題。性能優化最佳實踐涉及使用適當的索引、避免使用SELECT *、優化WHERE子句和使用綁定變量。掌握Oracle SQL需要實踐,包括代碼編寫、調試、思考和理解底層機制。

Navicat 連接超時:如何解決 Navicat 連接超時:如何解決 Apr 08, 2025 pm 11:03 PM

Navicat連接超時原因:網絡不穩定、數據庫繁忙、防火牆阻攔、服務器配置問題、Navicat設置不當。解決步驟:檢查網絡連接、數據庫狀況、防火牆設置,調整服務器配置,檢查Navicat設置,重啟軟件和服務器,聯繫管理員尋求幫助。

See all articles