看板 Ajax 關於我們 聯絡資訊
<div class="tempdiv" style="display:none"> <b> <line id="lineid_001" fill="none" stroke="#bf5f00" stroke-width="10" x1="100" y1="100" x2="200" y2="200" ></line> <line id="123" x1="10" y1="10" x2="20" y2="20"></line> </b> </div> var temp1=$(".tempdiv"); var lineoldid='lineid_001'; var linenewid='lineid_002'; 可以如下 $(("#"+lineoldid),temp1).remove() 這樣子馬上會被清除掉 line這一個標籤 但下列卻沒反應 $(("#"+lineoldid),temp1).attr("id",linenewid); 這樣子卻一點反應都沒有 請教這問題是出在哪裡? 怎麼那麼奇怪呢?百思不得其解? $(子, 父)這方式是可以取得父層下所有層級的後代子代, 還是只有父層的下一層子代? 另外若去抓id 也可以抓到沒有問題 如 alert($(("#"+lineoldid),temp1).attr("id"));沒問題 但卻就是不能改id? PS:最後我要取的是整個temp1下的所有內容,不是只取一條line出來 (這可用find和filter 取出單一條line 來改id, 那變成還要放回去.tempdiv下 , 因有擺放順序問題不方便) -- 寧願天空是藍色~ 也不願心情是藍的! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.17.52.209 ※ 編輯: robinnpca 來自: 163.17.52.209 (03/28 14:34) ※ 編輯: robinnpca 來自: 163.17.52.209 (03/28 14:36) ※ 編輯: robinnpca 來自: 163.17.52.209 (03/28 14:41)
LaPass:用prop()去改id看看,我記得有些東西要用prop才能改 03/28 14:44
LaPass:$(("#"+lineoldid),temp1) <= 用錯了,逗號後面是指定dom物 03/28 14:45
LaPass:件,例如... 想去操作其他框架頁或是parent、top之類的 03/28 14:46
LaPass:我記得是這樣寫 $("#id img") <= 取得#id底下的img 03/28 14:48
robinnpca:因為我用$(.tempdiv "#"+lineoldid)這樣子會顯示錯誤 03/28 19:44
robinnpca:無法藉由這樣去抓後層子代 prop我查一下!先謝謝! 03/28 19:45
LaPass:$(".tempdiv #"+lineoldid) 引號要加對地方..... 03/28 20:11