我想用它的innerHTML替換一個鏈接,它是如何完成的?使用innerHTML替換錨點
例子:
Bla bla bla <a href="#nogo">No link here</a> bla bla bla
有可能成爲
Bla bla bla No link here bla bla bla
試圖用它的innerHTML來取代節點,但我不能在節點本身的文本..
我猜測我必須使用正則表達式,但我無法弄清楚如何。
編輯:謝謝大家的快速反應!我似乎仍然無法做到。看起來還有更多事情要做。
我也使用原型js。
我收到了一些可能包含鏈接的文本。如果文本包含鏈接,則應該用它的innerHTML代替。 它看起來是這樣的:
<td id="text">This is some text <a href="/link/Go_%28To%29" title="Go (to)">goto</a>. Some more text.</td>
我試着用hasChildNodes()來請檢查是否包含文本的鏈接,但它總是返回是,即使在文字中並未包含一個鏈接或其他元素。所以我認爲也許文本也被認爲是一個節點,並嘗試過childElements [1]。這返回undefined。所以也許鏈接是textnode的一個節點。沒有! 我正在抓取這些數據並刪除JSON,以避免可能出現的問題。走在DOM在響應的其餘部分進展順利,但..
然而,當我提醒
$('text').childElements()[0]
實際HREF獲取的警告! (本地主機//鏈接/ Go_%28To%29)
$('text'.childElements()[0] .UP()讓我到實際TD父元素。
所以我用
if($('text').childElements()[0])
要請檢查是否包含文本的鏈接。
我想這變得有點離題,但我其實不能得到一個元素的權利。任何提示? 也許正則表達式是最好的選項?
你有沒有什麼參考點?就像一個包裝的跨度或div,或者可能是鏈接的ID,如果它有一個? – thismat 2009-11-06 21:41:19
您是否有任何要求保留鏈接本身可能存在的任何html?例如'foo'? – 2009-11-07 03:14:14
不,沒有鏈接裏面有html的情況。 – richard 2009-11-07 08:38:27