使用Jquery获取CSS生成的文本

时间:2016-03-03 14:31:37

标签: javascript jquery html css

我有一张这样的表:

<table id="orders">
  <tr>
    <td>05/06/2005</td>
    <td>3216549</td>
    <td>description</td>
    <td>2.000,00</td>
    <td>100</td>
    <td>20,00</td>
    <td><div id="state" class="state-c"> </div></td>
    <td><a href="modify.php?id=222"><span class="bt-edit">EDIT</span></a></td>
  </tr>
<table>

部分<div id="state" class="state-c"> </div>告诉&#34;已批准&#34;,&#34;拒绝&#34;等,并由CSS生成:

.state-c:before {
  content: "Confirmed";
}

现在我需要获取这些表格单元格的文本值,而对于我成功使用.text()方法的所有单元格,它不会获取CSS生成的文本&#34;已确认&#34; 。我尝试使用getGeneratedStyle.value,并且一直在搜索信息,但没有运气。

我的问题是:如果查看代码,如何在<div id="state" class="state-c"> </div>内部生成实际为空的文本?

3 个答案:

答案 0 :(得分:8)

您可以使用window.getComputedStyle来获取它。

&#13;
&#13;
var text = window.getComputedStyle($('#state')[0], ':before').content
alert(text)
&#13;
.state-c:before {
  content: "Confirmed";
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="orders">
  <tr>
    <td>05/06/2005</td>
    <td>3216549</td>
    <td>description</td>
    <td>2.000,00</td>
    <td>100</td>
    <td>20,00</td>
    <td><div id="state" class="state-c"> </div></td>
    <td><a href="modify.php?id=222"><span class="bt-edit">EDIT</span></a></td>
  </tr>
<table>
&#13;
&#13;
&#13;

答案 1 :(得分:-2)

ALTER TABLE `sessions`
ADD PRIMARY KEY (`customerid`)

将css作为字符串传递,并将文本放在双引号内。希望这会对你有所帮助

答案 2 :(得分:-3)

也许你可以尝试.find(&#34; #state&#34;)。text(&#34; my text&#34;)