Điểm:0

--2 được thêm vào ID khối

lá cờ jp

Tôi có một vấn đề kỳ lạ. Sau khi nâng cấp một trang web từ D8 lên D9, một số ID khối của tôi đã bị thay đổi. Một số trong số họ bây giờ có --2 phía sau ID. Điều này đang làm rối tung phong cách và kịch bản của tôi. Và tôi tự hỏi làm thế nào điều này có thể xảy ra và nếu có một giải pháp đơn giản cho nó. tôi đã tìm thấy vấn đề này mà không có bất kỳ giải pháp nào ngoài việc thay đổi các tệp CSS và JS của tôi.

Tôi biết Drupal đôi khi thay đổi ID sau khi gọi Ajax, ID mới này đã là ba sau khi tải trang đầu tiên. tôi có thể tất nhiên loại bỏ các --2 từ id bằng cách sử dụng dải cành cây hoặc thứ gì đó nhưng điều này giống như một vụ hack lớn, vì vậy tôi muốn biết tại sao điều này lại xảy ra.

Có ai có ý tưởng tìm kiếm ở đâu và tại sao, điều này đang xảy ra như thế nào không?

Jaypan avatar
lá cờ de
Nếu tôi nhớ chính xác (có lẽ tôi đã xem xét nó cách đây 10 năm), thì đó là chức năng #ajax. Vì phần tử đang được xây dựng lại, nó không phải là phần tử ban đầu mà là phần tử mới, do đó, về mặt ngữ nghĩa, việc sử dụng cùng một ID sẽ không chính xác. Nếu bạn cần tiếp tục nhắm mục tiêu cùng một mục, bạn có thể sử dụng lớp phần tử trình bao bọc cộng với lớp phần tử để nhắm mục tiêu phần tử.
lá cờ cn
Có vẻ như có thứ gì đó đang gọi `Html::getUniqueId()` hai lần cho các khối đó. Nó xảy ra trong `template_preprocess_block` theo mặc định, vì vậy hãy tìm mã tùy chỉnh có thể cố đặt lại ID hoặc có thể là bất kỳ thứ gì có thể khiến các khối được hiển thị hai lần
Joost avatar
lá cờ jp
Cảm ơn Clive, tôi đã xem xét điều này và tôi có hai mô-đun đóng góp đang thực hiện biểu mẫu web này và các khía cạnh. Nhưng việc loại bỏ hook khỏi cả hai mô-đun không loại bỏ được vấn đề.Các mô-đun tùy chỉnh của tôi không có móc nối này. Vì vậy, nó có thể bởi một mô-đun lõi nhưng làm thế nào để tìm ra mô-đun nào? Tôi phát hiện ra rằng nó chỉ làm điều này với các khối lượt xem. Vì vậy, vì lý do nào đó, các khối này được hiển thị hai lần và chỉ hiển thị một lần? Bước tiếp theo của tôi trong việc giải quyết vấn đề này là gì?
Kevin avatar
lá cờ in
Cách khắc phục ngắn hạn là không tạo kiểu theo id, điều này có thể xảy ra, tùy thuộc vào.
Joost avatar
lá cờ jp
Có, tôi đã sửa kiểu dáng bằng cách sử dụng lớp nhưng vấn đề này vẫn làm phiền tôi. Kết xuất một số khối hai lần mà không có lý do không cảm thấy đúng. Vì vậy, tôi muốn đào sâu vào vấn đề này để thực sự khắc phục nó. Nhưng bằng cách nào...?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.