作者OpenGoodHate (什麼東西什麼東西)
看板Ajax
標題[問題] JQuery 分辦同樣class名的div
時間Tue Apr 23 14:51:40 2013
目前我想抓取的div
長的如下
<div class='aaa'></div>
<div class='aaa'></div>
<div class='aaa' style='xxxxxx'>
<div style='xxxx'>
<div style='xxxxxx' title='Stop drawing'></div>
<div style='xxxxxx' title='point'></div>
<div style='xxxxxx' title='area'></div>
</div>
</div>
<div class='aaa'></div>
<div class='aaa'></div>
一共有數個div
但是class 名稱都相同
一開始我用
$('.aaa').eq(3).css();
來去修改第三個div中的值
可是實際上程式在跑的時後div 順序會換過
所以只能再往內層抓特徵值來做
現在最明顯的差別就是內層div 中有個title 值不同可以抓取
請問有辦法去掃過class aaa 中的DIV 比對title 值之後辦識出我要改的class 嗎
很想每個div 給它加ID
但是code 的來源不是我這邊能控制的XD
=========================================================================
補上最後我的做法
$("div[title=Stop drawing]").parent().parent().css("left",'100px');
感謝mrbigmouth大補充
$("div[title=Stop drawing]").closest('.aaa').css("left",'100px');
成功運作
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.150.53
1F:推 s25g5d4:那就抓div[title=stop]在抓parent 04/23 14:55
2F:→ s25g5d4:$('div[title=stop]').parent('.aaa') 04/23 14:56
3F:→ OpenGoodHate:請問如果有空白字元 例如stop drawing的話該怎麼處理 04/23 15:03
4F:→ OpenGoodHate:我試了$("div[title=Stop drawing]"); 04/23 15:04
5F:→ OpenGoodHate:我試了$("div[title=Stop drawing]"); 會抓錯 04/23 15:05
6F:→ OpenGoodHate:但是如果中間沒空白就成功 04/23 15:05
7F:推 s25g5d4:你去找CSS3 selector來看 有^=可以用 意思是開頭符合 04/23 15:05
8F:→ s25g5d4:我的錯 忘了加引號QQ $('div[title="stop d.."]') 04/23 15:06
9F:→ s25g5d4:另外.parent()只能抓一層 看你的結構要用兩次.parent() 04/23 15:06
10F:→ OpenGoodHate:成功了~~大感謝 04/23 15:08
※ 編輯: OpenGoodHate 來自: 59.120.150.53 (04/23 15:09)
11F:推 mrbigmouth:補充 用.parent() 不如用.closest('.aaa') 04/23 15:11
12F:推 s25g5d4:我居然不知道有這方法 感謝樓上m(_ _)m 04/23 15:13
※ 編輯: OpenGoodHate 來自: 59.120.150.53 (04/23 15:21)
13F:→ TonyQ:也是可以用.parents(".aaa") 04/23 16:21
14F:推 mrbigmouth:parents會找出標籤上層所有的.aaa啦.... 04/24 04:19
15F:→ Rplus:$('.aaa:has(div)') 04/24 23:43
16F:推 pttnews:原po 一開始錯在eq 是從0開始算,例子中$('.aaa').eq(2) 05/17 17:07
17F:→ pttnews:打錯 $('.aaa').eq(3) 05/17 17:09
18F:→ pttnews:是第四個.aaa 而不是第三個.aaa, 05/17 17:10
20F:→ pttnews:$('.aaa').eq(2).css('left','100px') 是可行的 05/17 17:12