2016-04-18 7 views

ответ

1

Если вы хотите щелкнуть элемент по его длине содержимого, то есть несколько способов достичь этого. XPath обеспечивает самый простой способ сделать это, используя функцию string-length(string).

  • Если один из текстовых узлов элемента имеет определенную длину y:

    casper.click(x("//span[string-length(text())=" + y + "]")); 
    
  • Если все содержание должно быть определенного размера (эквивалент к предыдущему предложению есть нет других узлов, кроме одного текстового узла):

    casper.click(x("//span[string-length(.)=" + y + "]")); 
    
  • Если пробельные является проблемой, то вы должны удалить, что:

    casper.click(x("//span[string-length(normalize-space(text()))=" + y + "]")); 
    casper.click(x("//span[string-length(normalize-space(.))=" + y + "]")); 
    

Помощник XPath дается через var x = require('casper').selectXPath;.

+2

Большое спасибо @artjom B.. Эта работа для меня, и вы для меня лучший друг. –

+0

@HosseinGanjyar Это верно. Он дал мне много полезных советов о CasperJS ... Я думаю, что моя компания должна заплатить ему за его предложения ... – Sayakiss

+0

@Sayakiss, я соглашаюсь с вашим домыслом. Спасибо Artjom B. –

Смежные вопросы