Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSF中的Javascript-“;车身装载量=”;vs</重定向>;标签_Javascript_Jsf 2_Onload_Param - Fatal编程技术网

JSF中的Javascript-“;车身装载量=”;vs</重定向>;标签

JSF中的Javascript-“;车身装载量=”;vs</重定向>;标签,javascript,jsf-2,onload,param,Javascript,Jsf 2,Onload,Param,我试图在我的一个JSF页面上使用javascript。不幸的是 <h:body onload="init('#{formBean.arrayAsString}')"> 一点也不叫。我发现,如果我在导航案例中添加/redirect标记以导航到页面,该函数将被加载。不幸的是,这导致了另一个问题,因为在导航中,我还传递了重要的f:param,以便formBean可以读取它。如果使用/redirect标记,则无法再读取参数值 如何在不使用重定向标记的情况下加载javascript i

我试图在我的一个JSF页面上使用javascript。不幸的是

<h:body onload="init('#{formBean.arrayAsString}')"> 

一点也不叫。我发现,如果我在导航案例中添加/redirect标记以导航到页面,该函数将被加载。不幸的是,这导致了另一个问题,因为在导航中,我还传递了重要的f:param,以便formBean可以读取它。如果使用/redirect标记,则无法再读取参数值

如何在不使用重定向标记的情况下加载javascript init函数?或者我可以通过重定向传递f:param值,但据我所知这是不可能的

我在下面发布导航方法:

首先,xhtml页面:

<h:selectOneMenu id="selectMenu" value="#{indexBean.name_id}">
    <f:selectItems value="#{indexBean.myModelValues}" />    
    <f:ajax event="valueChange" render="button" execute="@this"/>       
</h:selectOneMenu>
                <h:commandButton id="button" value="Go to form Browse" action="form">
                  <f:param name="name" value="#{indexBean.name_id}" />                                       
                </h:commandButton> 

请记住,此按钮也会由h:selectOneMenu的ajax事件重新呈现,以传递所选值

以及导航案例:

 <navigation-rule>
        <from-view-id>/index.xhtml</from-view-id>
        <navigation-case>   
            <from-outcome>
                form
            </from-outcome>
            <to-view-id>
                /form.xhtml
            </to-view-id>
            <redirect/>
        </navigation-case>
        </navigation-rule>

/index.xhtml
形式
/form.xhtml

重定向标记是一个新的附加组件,它启用了JavaScript初始化功能。

如果ajax调用该操作,就会发生这种情况。让它成为非ajax操作



更新:根据您的问题更新,将
替换为
,使其成为非ajax操作。顺便说一句,在JSF2中,如果from结果已经等于to视图ID,则不再需要导航案例。删除整个
,您不需要它。

您有“它是没有空格的h:body。您如何导航?使用faces-config.xml中的导航规则?或在action方法中返回字符串?或使用commandButton/commandLink action属性?我需要更改一些其他内容,但它可以工作-像往常一样感谢BalusC-巨大的支持。