javascript - JSF 页面中的 $.noConflict() 冲突

标签 javascript jquery jsf jsf-2 primefaces

我有一个 Primefaces 图表,我想将其与 AJAX 选项卡一起使用:

<h:head>

</h:head>
<h:body>
    <div id="test" style="width:850px; height:800px; position:absolute;  background-color:transparent; ">

        <h:form>
            <h:panelGroup layout="block">
                <h:selectOneListbox size="0" id="selectedMenu" value="#{dashboardController.selectedMenu}">
                    <f:selectItem itemLabel="first" itemValue="0" />
                    <f:selectItem itemLabel="second" itemValue="1" />
                    <f:selectItem itemLabel="third" itemValue="2" />

                    <f:ajax event="change" execute="@this" render="loadMenu" />
                </h:selectOneListbox>
            </h:panelGroup>

            <h:panelGroup layout="block" id="loadMenu">
                <h:panelGroup rendered="#{dashboardController.selectedMenu=='0'}">
                    MENU 0
                </h:panelGroup>

                <h:panelGroup rendered="#{dashboardController.selectedMenu=='1'}">
                    MENU 1
                </h:panelGroup>

                <h:panelGroup rendered="#{dashboardController.selectedMenu=='2'}">
                    MENU 2
                </h:panelGroup>
            </h:panelGroup> 
        </h:form>    
    </div> 
</h:body>


@ManagedBean
@ViewScoped
public class DashboardController implements Serializable{

private String selectedMenu;

@PostConstruct
public void init() {
    if (selectedMenu == null || selectedMenu.trim().isEmpty()) {
        this.selectedMenu = "0";
    }
}

public String getSelectedMenu() {
    return selectedMenu;
}

public void setSelectedMenu(String selectedMenu) {
    this.selectedMenu = selectedMenu;
} 
}

我使用此代码来绘制图表:

<script type="text/javascript">
   $.noConflict();
   // Code that uses other library's $ can follow here.
</script>
    ..........

<p:lineChart id="logins" value="#{StatisticsController.weekActivity}" legendPosition="ne"  
                                 title="Weekly Logins" seriesColors="4D94FF, 1975FF, 005CE6, 0047B2" minY="0" maxY="200"/>

当我删除

<script type="text/javascript">
    $.noConflict();
    // Code that uses other library's $ can follow here.
</script>

当 AJAX 选项卡工作时。看来 $.noConflict(); 代码存在冲突。我该如何解决这个问题?

最佳答案

因此,从 primefaces 库中删除 jquery include,并让它使用您已经包含的 jQuery。

关于javascript - JSF 页面中的 $.noConflict() 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12664246/

相关文章:

java - p :InputTextArea value doesn't get the newest value

javascript - 通过javascript确定页面UI文化

javascript - 浏览器中的 Python 和 React/Redux? (原为 : Transcrypt and React/Redux)

jquery - 数据表 : jQuery UI tabs : Make tab active with users wise

javascript - 使用路径id获取SVG路径d属性

javascript - PrimeFaces p :blockUI blocking a certain component dynamically (on JSF EL condition)?

javascript - 从没有数组的函数链中提取数据

javascript - 通过管道而不是 websocket 连接 Puppeteer 的优点和缺点是什么

jquery - 在 jquery-ui 可拖动方法中使 ui.helper 的光标位置在中心

mysql - hibernate sql join查询错误: javax. servlet.ServletException:对于输入字符串