【发布时间】:2013-08-06 10:35:28
【问题描述】:
我正在编写的代码在不同的页面上显示一些消息。
page 是页码。
ActionGetMessages 是一个 ajax 请求。
PushMessage 只是管理内容。
代码如下:
function ShowMessages ( page ) {
var oMessages = ActionGetMessages ( page );
for ( var key in oMessages ) {
if ( key == "end" ) continue;
PushMessage ( oMessages [key] );
}
var previous_page_button = document.getElementById ( "previous_page_button");
var next_page_button = document.getElementById ( "next_page_button" );
if ( page > 0 ) {
previous_page_button.style.display = "block";
previous_page_button.addEventListener ( "click",
function () {
ShowMessages ( page - 1 );
} );
}
if ( !oMessages ["end"] ) {
next_page_button.style.display = "block";
next_page_button.addEventListener ( "click",
function () {
ShowMessages ( page + 1 );
} );
}
}
调试此代码时,我注意到在用户来回导航页面后,有时单击(例如)下一页按钮会导致多次调用 ShowMessages 或类似的东西。
任何帮助将不胜感激。
【问题讨论】:
标签: javascript recursion events dom-events