我已經完成並手工完成了這個任務,但我認爲這可以通過一些jquery快速完成。獲取前一個兄弟的href並更新當前項的href
我有一張桌子,下面有幾十個示例行。我想要做的是找到<a href="#">
的以前的兄弟姐妹,抓住他們的URL,將文件類型更改爲.doc並應用。
<tr id="node-20" class="child-of-node-19">
<td>Tips</td>
<td>
<a href="docs/Interview-Info.pdf">
<img width="20" height="20" src="/images/icons/icon-pdf.gif" alt="PDF" />
</a>
<a href="#">
<img width="20" height="20" src="/images/icons/icon-word.gif" alt="Microsoft Word" />
</a>
</td>
</tr>
所以一旦javascript完成,生成的源代碼將如下所示。
<tr id="node-20" class="child-of-node-19">
<td>Tips</td>
<td>
<a href="docs/Interview-Info.pdf">
<img width="20" height="20" src="/images/icons/icon-pdf.gif" alt="PDF" />
</a>
<a href="docs/Interview-Info.doc">
<img width="20" height="20" src="/images/icons/icon-word.gif" alt="Microsoft Word" />
</a>
</td>
</tr>
我最後的變動是:
$('a+a[href="#"]').attr('href',$('a+a[href="#"]').prev().attr('href'));
這最終得到的第一個網址,並將其應用到所有的<a href="#">
。因此Interview-Info.pdf適用於所有這些鏈接。
這是因爲時間有限而得到的。有一個簡單的做法嗎?
謝謝!這完美地完成了這個技巧。我曾嘗試過使用「this」的變體,但我使用了錯誤的語法 – Fireflight 2010-10-21 14:33:04