无法获取分离元素jQuery的文本值

时间:2013-08-07 07:59:30

标签: jquery

我有以下HTML代码:

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

但是,我正在分离<p id="2">元素,它会消失。但是,在调用jQuery <p>函数后,我无法检索detach()元素内的文本值。 jQuery代码如下:

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

我无法在调用 detach()之后将文本值显示在警告框中,而不是之前。有人可以帮帮我吗。谢谢。

2 个答案:

答案 0 :(得分: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
    });
    

  3. 旁注:#2是无效的id选择器。 id cannot start with a digit

答案 1 :(得分:0)

您无法在文档中找到已分离的元素。

使用对包含您在p变量中存储的元素的jQuery对象的引用:

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

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