简体   繁体   中英

IceFaces 3.3: ace:dialog not working with IE8

I'm using IceFace 3.3.0 with MyFaces. I have a problem with ace:dialog. It's not working on IE 7 or 8, it works fine with any other browser.

Here's a simple example that shows the problem:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="de" lang="de" xmlns="http://www.w3.org/1999/xhtml"
  xmlns:h="http://java.sun.com/jsf/html"
  xmlns:icecore="http://www.icefaces.org/icefaces/core"
  xmlns:ace="http://www.icefaces.org/icefaces/components"
  xmlns:ice="http://www.icesoft.com/icefaces/component"
>
<h:head>
  <title></title>
</h:head>
<h:body>
<ace:dialog id="helpDialog" header="Help" widgetVar="helpDialog"
  closable="true" modal="true" draggable="false" showEffect="clip"
  hideEffect="fade" closeOnEscape="true" width="400" height="600">
  <h:outputText value="Help Dialog" />
</ace:dialog>

<h:form id="myform">
  <ace:panel id="mypanel" header="Test" closable="false" toggleable="false">
    <h:commandLink immediate="true" value="&gt; Dialog" onclick="helpDialog.show();" />
  </ace:panel>
</h:form>
</h:body>
</html>

On IE8, this code will not show the dialog and produces a JavaScript error when loading the page:

SCRIPT438 object doesn't support this property or method

The JavaScript error appears on this generated line:

helpDialog = ice.ace.create("Dialog",["helpDialog_main",{"isVisible":false,"minHeight":0,"width":400,"height":600,"draggable":false,"modal":true,"show":"clip","hide":"fade","title":"Help","ariaEnabled":true}])

I already tried different versions of MyFaces and even Mojarra, so I think this is an icefaces issue.

Any help is appreciated!

The dialog must be enclosed in a form or even the content can be enclosed by form as shown in the link.

<h:form>
  <ace:dialog id="helpDialog" header="Help" widgetVar="helpDialog"
    closable="true" modal="true" draggable="false" showEffect="clip"
    hideEffect="fade" closeOnEscape="true" width="400" height="600">
    <h:outputText value="Help Dialog" />
  </ace:dialog>
</h:form>

For more information, Ace Dialog

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM