JSF генерирует HTML. JavaScript работает с HTML. При написании кода JavaScript не смотрите слишком много на исходный код JSF, если вы уже не можете отличить верхнюю часть формы от того, какой именно код HTML будет генерировать.
Открыть страницу JSF в вашем любимом браузере, rightclick и Просмотреть исходный код. Сгенерированный HTML выход из <p:commandButton value="foo" />
выглядеть следующим образом:
<button id="formId:buttonId" name="formId:buttonId" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" onclick="PrimeFaces.ab({formId:'formId',source:'formId:buttonId',process:'@all'});return false;" type="submit">
<span class="ui-button-text">foo</span>
</button>
Посмотрите, кнопка имеет один <span>
ребенка в нем значения.
Таким образом, эта часть JS, чтобы изменить значение кнопки на bar
должны сделать:
document.getElementById("formId:buttonId").firstChild.innerHTML = "bar";
я вижу, это то, что я делал раньше, но думал, что способ борьбы с WidgetVar. Большое спасибо за вашу помощь. –
Конечно! Спасибо за совет. –