2016-02-25 2 views
0

Я установил значение экземпляра current-dateTime(). Я хочу обновить это значение на событии обновления страницы. Поэтому у меня есть следующий код:Значение current-dateTime() не обновляется при обновлении страницы

 <xf:action ev:event="page-refresh"> 
      <xf:setvalue ref="instance('noCache')/val"><xsl:value-of select="current-dateTime()" /></xf:setvalue> 
      <!-- call to resource with new value--> 
     </xf:action> 

Этот код устанавливает значение экземпляра (dateTime) как то же, что и при загрузке страницы!

Позже я использую это значение экземпляра, чтобы вызвать запросы GET-запроса к ресурсу и передать это обновленное значение экземпляра в качестве параметра.

Примечание: Использование текущих DATETIME() передать параметр к ресурсу, чтобы избежать использования кэшированных ресурсов (так как не мог найти способ генерации случайных чисел

Похоже, что проблема, которую я чувствую, что в XSL переменная current-dateTime() оценивается только при загрузке страницы, и для обновления страницы используется такое же значение. Есть ли другой способ получить обновленное значение даты в событии обновления страницы?

+0

Какой XForms процессор вы используете? –

+0

Использование xsltforms (реализация на стороне клиента) – Crusaderpyro

ответ

0

С XSLTForms вы можете позвонить Функции Javascript в выражениях XPath на стороне клиента, таким образом:

<xf:setvalue ref="instance('noCache')/val" value="getXMLDate()" ></xf:setvalue> 

И написать getXMLDate() функцию в вашем HTML:

<script> 
function gwtXMLDate(){ 
    var d = new Date(); 
    return d.toISOString(); 
} 
</script> 
Смежные вопросы