Добавить абсолютный базовый URL к относительному атрибуту src xPath - PullRequest
0 голосов
/ 12 мая 2011

Есть ли такая вещь, чтобы добавить базовый URL к относительному URL src с помощью xPath? Я хочу получить абсолютный URL изображения из относительного.

например:.

Чтобы взять src: <img src="/images/image.jpg" />

Я использовал:

IMG / @ SRC

Теперь я хочу сделать его абсолютным с добавлением http://myothersite.com/:

http://myothersite.com/images/image.jpg

Любая подсказка будет очень признательна.

Спасибо

UPDATE: Исходная HTML структура http://myothersite.com:

<div id="main">
    <div class="header">
        <h2>Some title</h2>
        <div id="date">8th March 2008</div>
    </div>

    <div id="content">
      <div id="main-content">
        <div class="region">
          <div id="block-system-main">
            <div class="block-content">
                <div id="node-123" class="clearfix">
                    <div class="content">
                        <div class="body">
                                            <!-- Here I want to grab absolute path, as http://myothersite.com/images/image.jpg -->
                            <p><img src="/images/image.jpg"/></p>
                            <p>Some content ....</p>
                        </div>    
                    </div>
                </div>
            </div>
          </div>
        </div>
      </div>
    </div>

</div>

Полный синтаксис:

Контекст:

//div[@id='main']

Название:

//div[@id='main']/div[1]/h2

создано:

//div[@id='date']

корпус:

//div[@id='node-123']/div/div

изображение с ошибкой Произошла ошибка с селектором XPath: Неверное выражение :

//div[@id='node-123']/div/div/*/concat('http://myothersite.com',img/@src)

1 Ответ

1 голос
/ 13 мая 2011

Вы ищете XPATH concat('http://myothersite.com',img/@src) функцию?Например,

  <xsl:template match="/">
   <absolutepath>
    <xsl:value-of select="concat('http://myothersite.com',img/@src)"/>
   </absolutepath>
  </xsl:template>

Я думаю, вы не можете использовать concat таким образом.Попробуйте:

concat('http://myothersite.com',//div[@id='node-123']//div[@class='body']/p/img/@src)

Получается первый p/image ребенок тела.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...