首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

jQuery 動態生成 ID 並關聯操作:兩段代碼邏輯分離需整合

     編輯:程式設計疑難解答

原代碼分析

// 片段 1:為 .xxbgcons > div 動態分配 ID
$('.xxbgcons>div').each(function(i) {
    $(this).attr('id', "tab1_div_" + i);
});

// 片段 2:操作固定 ID #myidg 下的 a 標簽
$("#myidg a").eq(0).html("333");
$("#myidg a").eq(1).html("444");

問題

兩段代碼針對不同元素,片段 1 生成的 ID (tab1_div_0...) 未在片段 2 中使用。

整合方案

// 若需對動態生成的每個 div 內部 a 標簽操作
$('.xxbgcons>div').each(function(i) {
    $(this).attr('id', "tab1_div_" + i);
    // 直接在這裡操作當前 div 內的 a
    $(this).find('a').eq(0).html("內容" + i);
});

// 或收集 ID 後統一處理
var ids = [];
$('.xxbgcons>div').each(function(i) {
    var id = "tab1_div_" + i;
    $(this).attr('id', id);
    ids.push(id);
});
ids.forEach(function(id) {
    $("#" + id + " a").eq(0).html("統一處理");
});

關鍵點

  • 動態 ID 生成後,需在同一上下文或通過選擇器再次選中才能操作。
  • 避免使用固定 ID (#myidg) 與動態 ID 混淆。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved