У меня проблемы с набором кнопок с помощью Primefaces. Я видел несколько других сообщений How to use jQuery and jQuery plugins with PrimeFaces с аналогичными проблемами и не получил никакого результата.Проблемы с JQuery и Primefaces
Херес пример кода:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<f:view locale="#{templateManager.userLocale}">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>#{msgs['report.title']}</title>
<h:outputStylesheet name="ssl-common.css" library="css"/>
<h:outputStylesheet name="final.css" library="css"/>
<link href="#{resource['img:favicon.ico']}" rel="icon"/>
<h:outputScript library="primefaces" name="jquery/jquery.js" />
</h:head>
<body id="reportList">
<ui:include src="../WEB-INF/header.xhtml" />
<section>
<h:form prependId="false">
<nav>
<div id="actionBar">
<div class="wraper">
<hgroup>
<h1>#{msgs['report.title']}</h1>
</hgroup>
<div id="subMenu" style="padding: 10px">
<script>
$(function() {
$("#radio").buttonset();
});
</script>
<div id="radio">
<input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label>
<input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label>
<input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label>
</div>
</div>
</div>
</div>
</nav>
(...)
<h:outputScript library="js" name="common.js"/>
<h:outputScript library="js" name="script.js"/>
<h:outputScript library="js" name="primefacesLocalePT-PT.js" />
<!--<h:outputScript library="js" name="jquery-ui-1.8.2.js" />-->
<script src="http://maps.google.com/maps/api/js?sensor=true&language=#{templateManager.userLocale}" type="text/javascript"/>
</body>
</f:view>
</html>
С помощью этого кода я получаю сообщение об ошибке:
TypeError:. $ (...) buttonset не является функцией [Перерыв на этой ошибке]
$ ("# radio"). Buttonset();
У кого-нибудь была аналогичная проблема?
Да, это так. Но исправьте меня, если я ошибаюсь, не имеет ли эталонность встроенная функция? – Zebedeu
@ RuiBatalha да, но вы также включили jQuery.js вручную. В Primefaces автоматически будут включены все необходимые части jQuery, но на странице должен быть хотя бы один компонент Primefaces, что здесь не так. – partlov
@partlov Извините, я удалил часть кода, в котором использовались простые шрифты: S Однако я думаю, что что-то нечетное. Поиск в моем проекте в блоке primefaces Я не вижу кнопку ресурса (META-INF.resources.primefaces ...). Я смущаюсь. Primefaces не использует кнопки jQuery-ui? – Zebedeu