[
https://issues.apache.org/jira/browse/WICKET-5690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Rain updated WICKET-5690:
-------------------------------
Description:
I have an enclosure with AjaxLink and Label. I control the visibility of the
enclosure by visibility of the Label.
{code}
<wicket:enclosure child="myRewardSum">
<p class="row">
<a wicket:id="rewardsLink" href="#">
<strong><wicket:message
key="myRewards">[Rewards link text]</wicket:message></strong>
</a>
<span class="value">
<span wicket:id="myRewardSum">[50
CZK]</span>
</span>
</p>
</wicket:enclosure>
{code}
When the visibility is resolved as false, I get following error. Changing the
control-child to link itself solves the problém so I think that the condition
when to bind the listener dosen't count with enclosures.
{code}Wicket.Ajax: Cannot bind a listener for event "click" on element
"rewardsLink1059" because the element is not in the DOM
Wicket.Ajax.DebugWindow.logError(msg="Cannot bind a listener f...ement is not
in the DOM")wicket-...udr6oyc (řádek 130)
Wicket.Log.error(msg="Cannot bind a listener f...ement is not in the
DOM")wicket-...udr6oyc (řádek 232)
.Event.add/<()wicket-...udr6oyc (řádek 180)
jQuery.Callbacks/fire(data=[Document /Application/, [function(selector,
context)]])jquery-1.11.0.js (řádek 3099)
jQuery.Callbacks/self.add()jquery-1.11.0.js (řádek 3145)
jQuery.fn.ready(fn=function())jquery-1.11.0.js (řádek 3379)
jQuery.fn.init(selector=function(), context=undefined)jquery-1.11.0.js (řádek
2819)
jQuery(selector=function(), context=undefined)jquery-1.11.0.js (řádek 75)
.Event.add(element="rewardsLink1059", type="click", fn=function(jqEvent, data),
data=null, selector=undefined)wicket-...udr6oyc (řádek 171)
.Ajax.ajax/<(idx=0, evt="click")wicket-...udr6oyc (řádek 1930)
.each(obj=["click"], callback=function(idx, evt),
args=undefined)jquery-1.11.0.js (řádek 384)
.Ajax.ajax(attrs=Object {
u="./XXrdIQsCca2JfmhojuMQK_...S35cURU7YDKFfEVOnxyQRNg", e=[1],
c="rewardsLink1059"})wicket-...udr6oyc (řádek 1908)
wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
(2) (řádek 1)
wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
(2) (řádek 1)
Wicket.Ajax.Call.prototype.processEvaluation/evaluate/<(notify=function())wicket-...udr6oyc
(řádek 1162)
FunctionsExecuter/this.processNext/run()wicket-...udr6oyc (řádek 139)
.proxy/proxy()jquery-1.11.0.js (řádek 556)
FunctionsExecuter/this.processNext()wicket-...udr6oyc (řádek 154)
FunctionsExecuter/this.start()wicket-...udr6oyc (řádek 166)
Wicket.Ajax.Call.prototype.doAjax/jqXHR<.complete(jqXHR=Object { readyState=4,
responseText="<?xml version="1.0" enco...aluate></ajax-response>",
responseXML=document, více...}, textStatus="success")wicket-...udr6oyc (řádek
699)
jQuery.Callbacks/fire(data=[Object { channel="0|s", initialize=function(),
_initializeDefaults=function(), více...}, [Object { readyState=4,
responseText="<?xml version="1.0" enco...aluate></ajax-response>",
responseXML=document, více...}, "success"]])jquery-1.11.0.js (řádek 3099)
jQuery.Callbacks/self.fireWith(context=Object { channel="0|s",
initialize=function(), _initializeDefaults=function(), více...}, args=[Object {
channel="0|s", initialize=function(), _initializeDefaults=function(), více...},
[Object { readyState=4, responseText="<?xml version="1.0"
enco...aluate></ajax-response>", responseXML=document, více...},
"success"]])jquery-1.11.0.js (řádek 3211)
done(status=200, nativeStatusText="OK", responses=Object { text="<?xml
version="1.0" enco...aluate></ajax-response>"}, headers="Content-Type:
text/xml;c...tty(8.1.14.v20131031)\r\n")jquery-1.11.0.js (řádek 9325)
.send/callback(_=readystatechange , isAbort=undefined){code}
was:
I have an enclosure with AjaxLink and Label. I control the visibility of the
enclosure by visibility of the Label.
{code}
<wicket:enclosure child="myRewardSum">
<p class="row">
<a wicket:id="rewardsLink" href="#">
<strong><wicket:message
key="myRewards">[Rewards link text]</wicket:message></strong>
</a>
<span class="value">
<span wicket:id="myRewardSum">[50
CZK]</span>
</span>
</p>
</wicket:enclosure>
{code}
When the visibility is resolved as false, I get following error. Changing the
control-child to link itself solves the problém so I think that the condition
when to bind the listener dosen't count with enclosures.
{code}Wicket.Ajax: Cannot bind a listener for event "click" on element
"rewardsLink1059" because the element is not in the DOM
Wicket.Ajax.DebugWindow.logError(msg="Cannot bind a listener f...ement is not
in the DOM")wicket-...udr6oyc (řádek 130)
Wicket.Log.error(msg="Cannot bind a listener f...ement is not in the
DOM")wicket-...udr6oyc (řádek 232)
.Event.add/<()wicket-...udr6oyc (řádek 180)
jQuery.Callbacks/fire(data=[Document /InternetBanking/, [function(selector,
context)]])jquery-1.11.0.js (řádek 3099)
jQuery.Callbacks/self.add()jquery-1.11.0.js (řádek 3145)
jQuery.fn.ready(fn=function())jquery-1.11.0.js (řádek 3379)
jQuery.fn.init(selector=function(), context=undefined)jquery-1.11.0.js (řádek
2819)
jQuery(selector=function(), context=undefined)jquery-1.11.0.js (řádek 75)
.Event.add(element="rewardsLink1059", type="click", fn=function(jqEvent, data),
data=null, selector=undefined)wicket-...udr6oyc (řádek 171)
.Ajax.ajax/<(idx=0, evt="click")wicket-...udr6oyc (řádek 1930)
.each(obj=["click"], callback=function(idx, evt),
args=undefined)jquery-1.11.0.js (řádek 384)
.Ajax.ajax(attrs=Object {
u="./XXrdIQsCca2JfmhojuMQK_...S35cURU7YDKFfEVOnxyQRNg", e=[1],
c="rewardsLink1059"})wicket-...udr6oyc (řádek 1908)
wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
(2) (řádek 1)
wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
(2) (řádek 1)
Wicket.Ajax.Call.prototype.processEvaluation/evaluate/<(notify=function())wicket-...udr6oyc
(řádek 1162)
FunctionsExecuter/this.processNext/run()wicket-...udr6oyc (řádek 139)
.proxy/proxy()jquery-1.11.0.js (řádek 556)
FunctionsExecuter/this.processNext()wicket-...udr6oyc (řádek 154)
FunctionsExecuter/this.start()wicket-...udr6oyc (řádek 166)
Wicket.Ajax.Call.prototype.doAjax/jqXHR<.complete(jqXHR=Object { readyState=4,
responseText="<?xml version="1.0" enco...aluate></ajax-response>",
responseXML=document, více...}, textStatus="success")wicket-...udr6oyc (řádek
699)
jQuery.Callbacks/fire(data=[Object { channel="0|s", initialize=function(),
_initializeDefaults=function(), více...}, [Object { readyState=4,
responseText="<?xml version="1.0" enco...aluate></ajax-response>",
responseXML=document, více...}, "success"]])jquery-1.11.0.js (řádek 3099)
jQuery.Callbacks/self.fireWith(context=Object { channel="0|s",
initialize=function(), _initializeDefaults=function(), více...}, args=[Object {
channel="0|s", initialize=function(), _initializeDefaults=function(), více...},
[Object { readyState=4, responseText="<?xml version="1.0"
enco...aluate></ajax-response>", responseXML=document, více...},
"success"]])jquery-1.11.0.js (řádek 3211)
done(status=200, nativeStatusText="OK", responses=Object { text="<?xml
version="1.0" enco...aluate></ajax-response>"}, headers="Content-Type:
text/xml;c...tty(8.1.14.v20131031)\r\n")jquery-1.11.0.js (řádek 9325)
.send/callback(_=readystatechange , isAbort=undefined){code}
> Hiding AjaxLink by other's component visibility in enclosure causes JS error
> ----------------------------------------------------------------------------
>
> Key: WICKET-5690
> URL: https://issues.apache.org/jira/browse/WICKET-5690
> Project: Wicket
> Issue Type: Bug
> Components: wicket
> Affects Versions: 6.16.0
> Environment: Windows 8.1 64-bit
> JDK 1.6.0_45
> Jetty / WebSphere 8
> Reporter: David Rain
> Priority: Minor
> Labels: ajax, dom, enclosure, event, link, wicket
>
> I have an enclosure with AjaxLink and Label. I control the visibility of the
> enclosure by visibility of the Label.
> {code}
> <wicket:enclosure child="myRewardSum">
> <p class="row">
> <a wicket:id="rewardsLink" href="#">
> <strong><wicket:message
> key="myRewards">[Rewards link text]</wicket:message></strong>
> </a>
> <span class="value">
> <span wicket:id="myRewardSum">[50
> CZK]</span>
> </span>
> </p>
> </wicket:enclosure>
> {code}
> When the visibility is resolved as false, I get following error. Changing the
> control-child to link itself solves the problém so I think that the condition
> when to bind the listener dosen't count with enclosures.
> {code}Wicket.Ajax: Cannot bind a listener for event "click" on element
> "rewardsLink1059" because the element is not in the DOM
> Wicket.Ajax.DebugWindow.logError(msg="Cannot bind a listener f...ement is not
> in the DOM")wicket-...udr6oyc (řádek 130)
> Wicket.Log.error(msg="Cannot bind a listener f...ement is not in the
> DOM")wicket-...udr6oyc (řádek 232)
> .Event.add/<()wicket-...udr6oyc (řádek 180)
> jQuery.Callbacks/fire(data=[Document /Application/, [function(selector,
> context)]])jquery-1.11.0.js (řádek 3099)
> jQuery.Callbacks/self.add()jquery-1.11.0.js (řádek 3145)
> jQuery.fn.ready(fn=function())jquery-1.11.0.js (řádek 3379)
> jQuery.fn.init(selector=function(), context=undefined)jquery-1.11.0.js (řádek
> 2819)
> jQuery(selector=function(), context=undefined)jquery-1.11.0.js (řádek 75)
> .Event.add(element="rewardsLink1059", type="click", fn=function(jqEvent,
> data), data=null, selector=undefined)wicket-...udr6oyc (řádek 171)
> .Ajax.ajax/<(idx=0, evt="click")wicket-...udr6oyc (řádek 1930)
> .each(obj=["click"], callback=function(idx, evt),
> args=undefined)jquery-1.11.0.js (řádek 384)
> .Ajax.ajax(attrs=Object {
> u="./XXrdIQsCca2JfmhojuMQK_...S35cURU7YDKFfEVOnxyQRNg", e=[1],
> c="rewardsLink1059"})wicket-...udr6oyc (řádek 1908)
> wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
> (2) (řádek 1)
> wicket-ajax-jquery-ver-1404896837995.js;jsessionid=1pluxkdxzzgehct98udr6oyc()wicket-...val
> (2) (řádek 1)
> Wicket.Ajax.Call.prototype.processEvaluation/evaluate/<(notify=function())wicket-...udr6oyc
> (řádek 1162)
> FunctionsExecuter/this.processNext/run()wicket-...udr6oyc (řádek 139)
> .proxy/proxy()jquery-1.11.0.js (řádek 556)
> FunctionsExecuter/this.processNext()wicket-...udr6oyc (řádek 154)
> FunctionsExecuter/this.start()wicket-...udr6oyc (řádek 166)
> Wicket.Ajax.Call.prototype.doAjax/jqXHR<.complete(jqXHR=Object {
> readyState=4, responseText="<?xml version="1.0"
> enco...aluate></ajax-response>", responseXML=document, více...},
> textStatus="success")wicket-...udr6oyc (řádek 699)
> jQuery.Callbacks/fire(data=[Object { channel="0|s", initialize=function(),
> _initializeDefaults=function(), více...}, [Object { readyState=4,
> responseText="<?xml version="1.0" enco...aluate></ajax-response>",
> responseXML=document, více...}, "success"]])jquery-1.11.0.js (řádek 3099)
> jQuery.Callbacks/self.fireWith(context=Object { channel="0|s",
> initialize=function(), _initializeDefaults=function(), více...}, args=[Object
> { channel="0|s", initialize=function(), _initializeDefaults=function(),
> více...}, [Object { readyState=4, responseText="<?xml version="1.0"
> enco...aluate></ajax-response>", responseXML=document, více...},
> "success"]])jquery-1.11.0.js (řádek 3211)
> done(status=200, nativeStatusText="OK", responses=Object { text="<?xml
> version="1.0" enco...aluate></ajax-response>"}, headers="Content-Type:
> text/xml;c...tty(8.1.14.v20131031)\r\n")jquery-1.11.0.js (řádek 9325)
> .send/callback(_=readystatechange , isAbort=undefined){code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)