Vitaly Sidorov created MYFACES-4636:
---------------------------------------
Summary: Using f:param + f:ajax onvent results in an error
Key: MYFACES-4636
URL: https://issues.apache.org/jira/browse/MYFACES-4636
Project: MyFaces Core
Issue Type: Bug
Affects Versions: 2.3-next-M8
Reporter: Vitaly Sidorov
Attachments: sample.zip
*Steps to reproduce:*
- create xhtml with f:param and f:ajax onevent like this:
{code:html}
<h:form prependId="false">
<h:commandLink action="#{sampleBean.doAction}">
<h:outputText value="Click Me!"/>
<f:param name="var1" value="NEW VALUE"/>
<f:ajax event="click"
execute="@this"
onevent="testJs">
</f:ajax>
</h:commandLink>
</h:form>
<script>
//<![CDATA[
function testJs(data) {
if (data.status === 'success') {
alert("Success click")
}
}
//]]>
</script>
{code}
- click on "Click me"
- get an error in the console: "{color:red}Uncaught SyntaxError: Unexpected
token ':' (at index.xhtml:9:868){color}"
*The reason: *
Generated page code by M7 build:
{code:javascript}
jsf.util.chain(this,
event,function(event){myfaces.ab(this,event,'click','j_id_i','',{'onevent':testJs,'var1':'NEW
VALUE'})}); return false;
{code}
Generated page code by M8 build with {*}bad JS{*}:
{code:javascript}
jsf.util.chain(this,
event,function(event){myfaces.ab(this,event,'click','j_id_i','',{'onevent':testJsparams:{'var1':'NEW
VALUE'}})}); return false;
{code}
*I've attached an archive with an example.*
--
This message was sent by Atlassian Jira
(v8.20.10#820010)