javascript - 按钮 JSF 中的绝对 URL

标签 javascript button jsf-2

我在许多页面中包含的页眉中都有这个按钮:

<input type="button" value="My Button" onclick="window.location.href='mypage.xhtml'"

它使用相对路径,如果调用者页面在同一目录中,它就可以工作。 如何使用绝对路径或使用 commandButton 标签? 我试过:

/mypage.xhtml

不工作(404 错误)

最佳答案

让 EL 打印 context path动态地。它将成为相对于域根的。

<input type="button" value="My Button" onclick="window.location.href='#{request.contextPath}/mypage.xhtml'">

或者,更好的是,只使用 JSF 自己的 <h:button> 无论如何生成相同 HTML 的组件,您无需担心上下文路径。

<h:button value="My Button" outcome="/mypage.xhtml" />

如果需要传递任何请求参数,可以使用<f:param>为此。

<h:button value="My Button" outcome="/mypage.xhtml">
    <f:param name="foo" value="bar" />
</h:button>

不要使用 <h:commandButton> .它不发送普通的 GET 请求,而是发送一个您需要重定向的 POST 请求,因此您最终得到两个 HTTP 请求,其中所有请求参数都在第二个请求中丢失。

关于javascript - 按钮 JSF 中的绝对 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10690203/

相关文章:

javascript - 从字符串转换为数字,但仅转换为有效整数的字符串

javascript - 添加 anchor 和 onClick 到链接

javascript - 使用jquery访问另一个类中的类

C# 将一个按钮类调用到另一个类中

javascript - 小幅更改后 Accordion 按钮未关闭(面板)

javascript - 单击按钮时显示框阴影的 Div

java - 尝试请求 JSF 页面时获取 404 状态

java - JSF2 : Using EL in navigation rules. 超时重定向?

java - Spring Inject注解导致空指针异常

javascript - 如何使弹出窗口居中