0

我最近从 Struts 2.0.11 升级到最新版本 (2.3.15),发现无法刷新sx:div标签。这是代码:

<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
<sx:head debug="true" />

<script language="javascript" type="text/javascript">
var controller = {
    refresh : function() {}
};

dojo.event.topic.registerPublisher("/refresh", controller, "refresh");
</script>

<s:url id="URLAjaxKaptcha" namespace="%{#attr.kaptchaNamespace}" action="kaptcha"/>
<sx:div  id="prosoc_kaptcha" theme="ajax" href="%{URLAjaxKaptcha}"
         loadingText="<small>loading &#133;</small>"
         errorText="Security code is loading - please wait"
         listenTopics="/refresh" cssClass="kaptchaDiv">

</sx:div>

<s:a href="javascript:void(0)" onclick="controller.refresh()">click to get a new image</s:a>.

在升级之前,当用户单击刷新超链接时,新的 kaptcha 图像会返回到sx:div。升级后这个就不行了。

我没有收到任何错误消息,我可以在beforeNotifyTopicsafterNotifyTopics中放置警报,这样我就知道正在调用刷新函数。我只是没有在sx:div中获得新的 kaptcha 图像。

有没有人有任何想法?

4

0 回答 0