我无法使用javascript或jquery从div中获取纯文本

时间:2016-04-23 12:16:57

标签: javascript jquery

所以我有一个div这样的文字:

<div id="myDiv">Get this text</div>

我尝试过以下方法:

var $var2 = $('#myDiv').text();

var div = document.getElementById('myDiv');
var $var2 = div.textContent; // white space/block around text
var $var2 = div.innerHTML; // same as textContent

我想我已经尝过其他人了,但那是我现在记得的。

我也看到了这个答案,但我不确定是否有必要/适用于我的案例。

$("strong")
        .clone()    //clone the element
        .children() //select all the children
        .remove()   //remove all the children
        .end()  //again go back to selected element
        .text();    //get the text of element

我在$.post来电中发送了两个变量,$var2始终为空,除非我直接指定$var2 = "text";

当我警告两个变量并排$ var1和$ var2时,$ var2被推出$ var1,除非我声明$var2 = "text";在这种情况下它们是并排的。然后插入经过,$var2不是空白。

我想我可能只是使用隐藏的输入字段并使用此div标签设置其值,以便我的插入仍然可以通过。

3 个答案:

答案 0 :(得分:2)

  

所选文本不是纯文本,它周围有空格,并且不能通过PHP插入到MySQL数据库中。此变量为空

使用

修剪空白
var value = $.trim( $("#myDiv").text() );

https://api.jquery.com/jQuery.trim/

在JS ES5中,您可以使用String.prototype.trim()

var value = document.getElementById("myDiv").textContent.trim();

答案 1 :(得分:-1)

只需添加:

document.getElementById('myDiv').innerText

(document.getElementById('myDiv').textContent+"").trim()

答案 2 :(得分:-1)

使用jQuery .html()核心方法 然后,使用RegEx修剪

$('#myDiv').html().replace(/^\w*(.*)\w*$/, '$1')