關於jq的delegate問題
<code>//PHP <?php include "db.php"; if(isset($_POST["category"])){ $category_query = "SELECT * FROM categories"; $run_query = mysqli_query($con,$category_query); echo " <div class='nav nav-pills nav-stacked'> <li class='active'><a href='#'><h4>Categories</h4></a></li> "; if(mysqli_num_rows($run_query)>0){ while($row = mysqli_fetch_array($run_query)){ $cid = $row["cat_id"]; $cat_name = $row["cat_title"]; //问题在这里 echo " <li><a href='#' class='category' cid='$cid'>$cat_name</a></li> "; } echo "</div>"; } } if(isset($_POST["brand"])){ $brand_query = "SELECT * FROM brands"; $run_query = mysqli_query($con,$brand_query); echo " <div class='nav nav-pills nav-stacked'> <li class='active'><a href='#'><h4>Brands</h4></a></li> "; if(mysqli_num_rows($run_query)>0){ while($row = mysqli_fetch_array($run_query)){ $bid = $row["brand_id"]; $brand_name = $row["brand_title"]; echo " <li><a href='#'>$brand_name</a></li> "; } echo "</div>"; } } if(isset($_POST["getProduct"])){ $product_query = "SELECT * FROM products ORDER BY RAND() LIMIT 0,9"; $run_query = mysqli_query($con,$product_query); if(mysqli_num_rows($run_query) >0 ){ while($row = mysqli_fetch_array($run_query)){ $pro_id = $row['product_id']; $pro_cat = $row['product_cat']; $pro_brand = $row['product_brand']; $pro_title = $row['product_title']; $pro_price = $row['product_price']; $pro_image = $row['product_image']; echo " <div class='col-md-4'> <div class='panel panel-info'> <div class='panel-heading'>$pro_title</div> <div class='panel-body'> <img style='width:300px;height:300px' src='product_image/$pro_image' /> </div> <div class='panel-heading'>$.$pro_price.00 <button pid='$pro_id' style='float:right' class='btn btn-danger btn-xs'>AddToCart</button> </div> </div> </div> "; } } } ?></code>
<code>//JS $(document).ready(function() { cat(); brand(); product(); function cat() { $.ajax({ url: 'action.php', type: 'POST', data: { category: 1 }, }) .done(function(data) { //console.log(data); $("#get_category").html(data); }); } function brand() { $.ajax({ url: 'action.php', type: 'POST', data: { brand: 1 }, }) .done(function(data) { //console.log(data); $("#get_brand").html(data); }); } function product() { $.ajax({ url: 'action.php', type: 'POST', data: { getProduct: 1 }, }) .done(function(data) { //console.log(data); $("#get_product").html(data); }); } //使用 delegate() 方法。on不能获取 $("body").delegate(".category", "click", function() { alert(123); }) // $(".category").on("click", function(event) { // alert(13); // }); })</code>
我用on的方法為什麼點擊沒反應?而delegate有?是不是因為這個class寫在php上,on不能讀取?還是怎麼樣?
回覆內容:
<code>//PHP <?php include "db.php"; if(isset($_POST["category"])){ $category_query = "SELECT * FROM categories"; $run_query = mysqli_query($con,$category_query); echo " <div class='nav nav-pills nav-stacked'> <li class='active'><a href='#'><h4>Categories</h4></a></li> "; if(mysqli_num_rows($run_query)>0){ while($row = mysqli_fetch_array($run_query)){ $cid = $row["cat_id"]; $cat_name = $row["cat_title"]; //问题在这里 echo " <li><a href='#' class='category' cid='$cid'>$cat_name</a></li> "; } echo "</div>"; } } if(isset($_POST["brand"])){ $brand_query = "SELECT * FROM brands"; $run_query = mysqli_query($con,$brand_query); echo " <div class='nav nav-pills nav-stacked'> <li class='active'><a href='#'><h4>Brands</h4></a></li> "; if(mysqli_num_rows($run_query)>0){ while($row = mysqli_fetch_array($run_query)){ $bid = $row["brand_id"]; $brand_name = $row["brand_title"]; echo " <li><a href='#'>$brand_name</a></li> "; } echo "</div>"; } } if(isset($_POST["getProduct"])){ $product_query = "SELECT * FROM products ORDER BY RAND() LIMIT 0,9"; $run_query = mysqli_query($con,$product_query); if(mysqli_num_rows($run_query) >0 ){ while($row = mysqli_fetch_array($run_query)){ $pro_id = $row['product_id']; $pro_cat = $row['product_cat']; $pro_brand = $row['product_brand']; $pro_title = $row['product_title']; $pro_price = $row['product_price']; $pro_image = $row['product_image']; echo " <div class='col-md-4'> <div class='panel panel-info'> <div class='panel-heading'>$pro_title</div> <div class='panel-body'> <img style='width:300px;height:300px' src='product_image/$pro_image' /> </div> <div class='panel-heading'>$.$pro_price.00 <button pid='$pro_id' style='float:right' class='btn btn-danger btn-xs'>AddToCart</button> </div> </div> </div> "; } } } ?></code>
<code>//JS $(document).ready(function() { cat(); brand(); product(); function cat() { $.ajax({ url: 'action.php', type: 'POST', data: { category: 1 }, }) .done(function(data) { //console.log(data); $("#get_category").html(data); }); } function brand() { $.ajax({ url: 'action.php', type: 'POST', data: { brand: 1 }, }) .done(function(data) { //console.log(data); $("#get_brand").html(data); }); } function product() { $.ajax({ url: 'action.php', type: 'POST', data: { getProduct: 1 }, }) .done(function(data) { //console.log(data); $("#get_product").html(data); }); } //使用 delegate() 方法。on不能获取 $("body").delegate(".category", "click", function() { alert(123); }) // $(".category").on("click", function(event) { // alert(13); // }); })</code>
我用on的方法為什麼點擊沒反應?而delegate有?是不是因為這個class寫在php上,on不能讀取?還是怎麼樣?
對於動態產生的元素使用on
<code> $('body').on('click','.category' , function() { alert(123); })</code>
在你使用新 API 之前,應透過文件充分了解它的作用。

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。
