检索div元素中的文本值

时间:2017-05-09 10:35:56

标签: jquery contains

我有一个div元素<div guid="60b758f8-62e7-42cc-ab66-5eca80642f35">100%</div> 没有任何id或类,由系统自动生成。我需要通过jQuery在变量中获得100%,然后用弹出消息提醒用户。

如何在变量中将此“100%”作为文本,因为它没有任何id或类。注意,这个百分比会保持不变。它可以是0%到100%之间的任何值。所以我计划实现“div:contains('%')”函数然后获取全文。但是无法实现它。谁能帮助我得到这个div的全文?

4 个答案:

答案 0 :(得分:1)

由于它是自动生成的,您需要使用属性选择器:
https://api.jquery.com/attribute-equals-selector/

  

attributeEquals选择器
  描述:选择具有的元素   指定的属性,其值完全等于某个值。

https://api.jquery.com/has-attribute-selector/

  

attributeHas选择器
  描述:选择具有的元素   指定的属性,带有任何值。

所以它会像:

$("div[guid='60b758f8-62e7-42cc-ab66-5eca80642f35']")

答案 1 :(得分:1)

请尝试下面的代码。希望它能运作。

Sub ExtractDates()

Dim iRow As Integer
Dim c As Range, rng as Range

'Start row to input dates
iRow = 1

'Target range
Set rng = Thisworkbook.Sheets("SheetName").Range("A1:A25")

'Loop through target range and add any dates to Column C
For Each c In rng 
    If IsDate(c.Value) Then
        ThisWorkbook.Sheets("SheetName").Cells(iRow, "C").Value = c.Value
        iRow  = iRow + 1
    End If
Next c

End Sub

答案 2 :(得分:0)

您可以使用文本方法并检查条件是否包含。

&#13;
&#13;
$("div").text(function() {
  var $this = $(this);
  if ($('div:contains("%")').length > 0) {
    console.log($this.text());
  }
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div guid="60b758f8-62e7-42cc-ab66-5eca80642f35">100%</div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

如果你有多个具有属性guid的div元素,并且你需要单独获取它的内部文本,那么更好的方法是使用id或class。 在你的情况下,我认为你所拥有的唯一的东西是属性guid,所以你可以用属性guid搜索所有div元素。

示例代码:

$('div[guid]').each(function() {
     console.log($(this).text());
 });

您还应该在正文末尾导入jquery库

示例代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>