0

在我的应用程序中,我有以下<h:outputLink>和的组合<p:commandButton>

<h:outputLink target="_blank" value="theURL">
    <p:commandButton value="Click" type="button" />
</h:outputLink>

上面的按钮在 Chrome 和 Firefox 中正常工作。但是,当我使用 IE 时,单击按钮时没有任何反应。

如果您能给我任何建议,我将不胜感激。

4

1 回答 1

1

生成的 HTML 标记在语法上毫无意义。你最终得到一个

<a><button></button></a>

应该调用谁的动作?链接或按钮之一?

我建议只<p:button>使用window.open().

<p:button value="Click" onclick="window.open('theURL');return false;" />    

如果使用该链接是为了纯粹的 SEO 目的,那么我建议<p:commandButton>用它自己生成的标记替换为 a<span>而不是 as <button>。例如

<h:outputLink target="_blank" value="theURL">
    <span class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" type="button">
        <span class="ui-button-text">Click</span>
    </span>
</h:outputLink>
于 2012-06-12T14:32:28.173 回答