Как вызвать функцию javascript из библиотеки тегов?

Итак, у меня есть вопрос относительно javascript, как вызвать функцию js из файлов jsp или jspx.

на моей странице jspx у меня есть цикл, который добавляет данные в таблицу, вот пример кода

<c:forEach items="${loadList}" var="load">
   <tr>
     <td>
       <nobr><c:out value="${load}"/></nobr>
     </td>
  </tr>
</c:forEach>

Здесь строка № 3 выполняет c:out для переменной загрузки, которая печатается как

55.959090909090904
118.94545454545454
133.46818181818182
19.727272727272727

значения и т. д. Итак, я написал функцию js для округления этих значений до

55.95
118.94
133.46
19.72

JS-функция

function roundOfValue(value, limit) {
    value = value.toFixed(limit);
    return value;
}

Я пытаюсь вызвать эту функцию в c:out как

<nobr><c:out value="roundOfValue(${system},2);"/></nobr>

но это не вызывает функцию и печатает то же самое в пользовательском интерфейсе. Есть ли способ вызвать эту функцию, которая будет печатать округленные значения.

Я даже пробовал следующее, но это не работает

1. <c:forEach items="${systemList}" var="system" varStatus="row">
2.  <tr><td id="load">
3.   <nobr><div id="div"></div>
4.    <script>
5.     document.getElementById(div).innerHTML =  roundOfValue(${system},2);
 6.   </script></nobr>
4.  </td></tr>
5. </c:forEach>

Пожалуйста, предложите несколько шагов для этого. Спасибо


person Achinta Paul    schedule 17.02.2015    source источник


Ответы (1)


Используйте JSTL вместо JS:

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

<nobr><fmt:formatNumber value="${load}" pattern="0.00"/></nobr>
person Community    schedule 17.02.2015