Expand my Community achievements bar.

SOLVED

check if the page url contain specific text

Avatar

Level 3

In htl how can we check if the page URL contains specific text ?  ( intend to do it on the page rather than by Java )

${'a' in 'abc'} <!--/* returns true */-->  does not work  
1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi,

It may not be working because of old HTL version (Shipped with AEM)

please check specifications at htl-spec/CHANGELOG.md at master · adobe/htl-spec · GitHub

I tried in AEM 6.5, it works.



Arun Patidar

View solution in original post

2 Replies

Avatar

Correct answer by
Community Advisor

Hi,

It may not be working because of old HTL version (Shipped with AEM)

please check specifications at htl-spec/CHANGELOG.md at master · adobe/htl-spec · GitHub

I tried in AEM 6.5, it works.



Arun Patidar

Avatar

Level 6

Does not work in AEM 6.4 GA.

You can try using a small use js file and pass it the test string value as shown below:

Or go for Java.

filepath.js:

use(function () {

    var testStr= this.value;

    var retValue = currentPage.path.toLowerCase().contains(testStr.toLowerCase());

    return {

        hasString: retValue

    };

});

HTL Code:

<div data-sly-use.path="${'filepath.js' @ value='demo-page'}">

    ${path.hasString}

</div>

I have converted both strings to lower case for case insensitive check.