提问人:David 提问时间:7/10/2019 最后编辑:KukeltjeDavid 更新时间:7/10/2019 访问量:446
p:dialog 不会隐藏在 HTML 中,直接呈现在页面上
p:dialog not hidden in html and directly rendered on page
问:
我有一个,它通常不会呈现在页面上,当我激活它时,它会在新窗口中显示为弹出窗口。p:dialog
<p:dialog id="dialogAdressvalidierung"
header="Adresse auswählen"
widgetVar="popupAdrValidierung"
modal="true"
draggable="true"
showEffect=""
hideEffect=""
width="900"
resizable="false"
appendTo="@(body)">
<!--dialogs content-->
</p:dialog>
html 输出通常是这样的
<div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-shadow ui-hidden-container ui-draggable"
id="dialogAdressvalidierung"
role="dialog"
aria-hidden="true"
aria-labelledby="dialogAdressvalidierung_title"
style="width: 900px; height: auto;">
<!--content-->
</div>
但是,在一种情况下,我需要刷新服务器上的页面。
FacesContext context = FacesContext.getCurrentInstance();
Application application = context.getApplication();
ViewHandler viewHandler = application.getViewHandler();
UIViewRoot viewRoot = viewHandler.createView(context, context.getViewRoot().getViewId());
context.setViewRoot(viewRoot);
context.renderResponse();
执行上面的 java 代码后,xhtml 文件中的所有对话框都显示在 html 中,页面看起来非常扭曲。一些属性,如元素的 和,由 不见了:aria-hidden="true"
role="dialog"
div
p:dialog
<div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-shadow ui-hidden-container"
id="dialogAdressvalidierung">
<!--content-->
</div>
为什么 p:dialog 的 html 输出不再隐藏?如何让对话框不显示在页面上,并且仅在激活时才弹出?
答: 暂无答案
评论