2013-08-07 67 views
0

我有以下的HTML代碼:不能得到分離元素的文本值jQuery的

<p id="1">Hello there.</p> 
<p id="2">To be removed.</p> 

不過,我卸下<p id="2">元素,它消失,因爲它應該。但是,在調用jQuery detach()函數之後,我無法檢索該<p>元素內的文本值。 jQuery的代碼如下:

$(document).ready(function() { 
    var p = $('#2').detach(); 
    alert($('#2').val()); 
}); 

我不能得到的文本值出現在警告框detach()被調用,而不是之前。任何人都可以幫助我。謝謝。

回答

3

兩件事情:

  1. p元素沒有一個值(這對錶單域),他們擁有的內容。使用texthtml,而不是val

  2. 您試圖第二次查看它,但當然不會找到它。您需要使用您創建的變量。

    $(document).ready(function() { 
        var p = $('#2').detach(); 
        //  v----- use `text` or `html` 
        alert(p.text()); 
        // ^---- use the variable `p`, don't try to look it up a second time 
    }); 
    

旁註:#2是無效id選擇。 idcannot start with a digit

+1

它不應該是'警報($(P)的.text ());'? – Tomer

+0

我嘗試過使用文本。但是,如何在該元素上調用detach()之後獲得該文本值? – blackpanther

+0

@ ftom2:是的,只是看到並修復了。 –

0

您無法在文檔中找到已分離的元素。

使用參考jQuery對象包含已存儲在p可變元素:

var p = $('#2').detach(); 
alert(p.text()); 

演示:http://jsfiddle.net/jWb49/