Primefaces p:commandLink在IE8上面不起作用?

时间:2016-12-08 11:05:15

标签: javascript jsf primefaces internet-explorer-8

我的标签p:commandLink在IE8之上不起作用(在IE8中正常工作)。

我的xhtml是这样的:

        <h:head>
        <script type="text/javascript">​
                function show_confirm() {
                //<![CDATA[
                    var conf = confirm('Are you sure you want to delete?');
                        if (conf == true) {
                            document.getElementById("scheduleManagerForm:delrow").click();
                        }
                    //]]>
                }

                function run_the_Job_Confirmation() {
                    //<![CDATA[
                        var conf = confirm('Are you sure you want to run it now?');
                            if (conf == true) {
                                document.getElementById("scheduleManagerForm:runrow").click();
                            }
                        //]]>
                    }

            </script>
        </h:head>

    <body>
    <h:form>    
    <p:dataTable id="jobSchedules" var="js" value="#{SJBean.listOfJobScheduleDTO}" 
                               selectionMode="single" selection="#{SJBean.selectedJobSchedule}"
                              rowSelectListener="#{SJBean.onRowSelect}"
                              rowEditListener="#{SJBean.rowEdit}" onRowEditUpdate="jobSchedules msgs">

        <p:column style="width:150px;" headerText="Edit">
                <p:rowEditor update="scheduleManagerForm:jobListPanel" oncomplete="location.reload()"/>
                <p:commandLink styleClass="ui-icon ui-icon-trash" onclick="show_confirm();">
                        <f:setPropertyActionListener target="#{SJBean.selectedJobSchedule}" value="#{js}" />
                </p:commandLink>
                <p:commandLink styleClass="ui-icon ui-icon-play" onclick="run_the_Job_Confirmation();"></p:commandLink>
        </p:column>
           </p:dataTable>
<h:commandButton id="delrow" value="ok" style="visibility:hidden;">
                                        <f:ajax listener="#{SJBean.deleteRow}" render="msgs jobSchedules"></f:ajax>
                                    </h:commandButton>
                                    <h:commandButton id="runrow" value="ok" style="visibility:hidden;">
                                        <f:ajax listener="#{SJBean.runTheJob}" render="msgs"></f:ajax>
                                    </h:commandButton>
    </h:form>
    </body>

当用户点击删除图标并且未触发show_confirm()时(通过在Firefox中放置调试点来检查)。

相同的代码在IE 8中完美执行。 我正在使用Primefaces 2.2作为应用程序的组成部分。

1 个答案:

答案 0 :(得分:0)

我的javascript中有一个隐形字符。它在我的文本编辑器(Eclipse中的那个)中是不可见的,但是当我在记事本中打开时,我能够看到它。 那是禁止它执行javascript。删除它,现在一切正常。