mailto:在 JSF 中的 selectOneMenu 中选择的选项上

发布于 2024-09-06 09:24:08 字数 112 浏览 3 评论 0原文

我想在 jsf 中的 selectOneMenu(dropdown list) 中的选定选项上实现 mailto: 链接,

我该如何实现这个?

I want to implement mailto: link in jsf on selected option in selectOneMenu(dropdown list)

how can i implement this ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

成熟稳重的好男人 2024-09-13 09:24:08

所以你想最终得到类似的东西

<select>
    <option><a href="mailto:[email protected]">link</a></option>
</select>

这在 HTML 中已经不可能实现,因此 JSF 在这里无法为您做太多事情。最好的选择是使用

  • 模仿下拉菜单以及 JavaScript 和 CSS 的精彩镜头。

或者,如果您可以接受不可样式化的下拉选项(例如,您可以不给它们着色或加下划线,以便它们看起来像链接),您也可以只添加一点 JS 来满足您的需求。

<h:selectOneMenu onchange="var link = this.options[this.selectedIndex].value; if (link) window.location = link;">
    <f:selectItem itemLabel="Please select" itemValue="null" />
    <f:selectItems value="#{bean.mailLinks}" />
</h:selectOneMenu>

假设项目值已经是带有 mailto:[email protected]< 的字符串/a> 值。

So you want to end up with something like

<select>
    <option><a href="mailto:[email protected]">link</a></option>
</select>

?

That's already not possible in HTML, so JSF can't do much for you here. Your best bet is to mimic a dropdown with <div><ul><li> and a good shot of JavaScript and CSS.

Alternatively, if you can live with non-styleable dropdown options (you can for example not color or underline them, so that they look like links), you can also just add a little shot of JS to achieve your needs.

<h:selectOneMenu onchange="var link = this.options[this.selectedIndex].value; if (link) window.location = link;">
    <f:selectItem itemLabel="Please select" itemValue="null" />
    <f:selectItems value="#{bean.mailLinks}" />
</h:selectOneMenu>

Assuming that the item values are already strings with the mailto:[email protected] values.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文