Tôi có một bản đồ tờ rơi và chạy. Nó chồng lên một loạt các đa giác (qua GeoJSON) trên bản đồ và đính kèm các cửa sổ bật lên cho mỗi đa giác. Mỗi cửa sổ bật lên hiển thị thông tin về đa giác đó.Nhấp vào liên kết bên trong Leaflet Popup và làm Javascript
Tôi muốn có trong cửa sổ bật lên một liên kết, khi được nhấp, chạy một hàm javascript kéo các đa giác nhỏ hơn nữa thông qua AJAX và hiển thị chúng.
Tôi không thể lấy tập lệnh để nắm bắt nhấp chuột vào liên kết thông qua các sự kiện nhấp chuột jQuery/Javascript bình thường. Dưới đây là ý tôi là bình thường (sau đây không hoạt động):
$('a .smallPolygonLink').click(function(e){
console.log("One of the many Small Polygon Links was clicked");
});
Phần bindPopup như sau. Nó chạy trên mỗi đa giác khi thực hiện và nó bật lên một cách chính xác khi nhấp vào một đa giác. Nó hiển thị liên kết, sẽ không chạy mã trên khi nhấp chuột.
var popupContent = "Basic Information..." + '<a class="smallPolygonLink" href="#">Click here to see the smaller polygons</a>';
layer.bindPopup(popupContent);
Dưới đây là một ví dụ minh họa, mặc dù ở dạng đơn giản hơn nhiều. http://jsfiddle.net/2XfVc/4/
Làm thế nào tôi sẽ sửa đổi này để thêm văn bản hoặc nội dung đó là không thể nhấp? Ví dụ. Tên: xxxx, Tuổi: xxxx, Nhấp vào Liên kết để biết thêm chi tiết. Chỉ với từ "Liên kết" có thể nhấp được. Ngoài ra, phần [0] làm gì? Tôi không thể tìm thấy bất kỳ tài liệu tham khảo trong api jquery nhấp chuột. – Josh
@Josh Chỉ cần thêm các phần tử khác cùng với phần tử có thể nhấp. Đây là phần trình diễn: http://jsfiddle.net/2XfVc/8/ Phần '[0]' đơn giản lấy nút DOM từ bộ sưu tập jQuery, vì tờ rơi chấp nhận các nút DOM chuẩn nhưng không chấp nhận các bộ sưu tập jQuery. –
Tuyệt vời. Tôi đã thay đổi nó thành '.html()' thay vì '.text()' để một số định dạng html sẽ hiển thị, nhưng nếu không thì nó hoàn hảo. Cảm ơn. – Josh