Jquery Javascript在私有消息传递系统中自动取消选中复选框
你好。 我正在使用jQueryAjax构建一个私有消息传递系统,以便在不重新加载整个页面的情况下获取新消息。 我给了一个div一个名为“inbox\u display”的id。 我希望这个div能够使用1000ms的setInterval自动重新加载,这样新消息就可以在不重新加载整个页面的情况下显示 每个收件箱旁边都有一个复选框,删除邮件时将选中该复选框。 我现在遇到的问题是,无论何时选中这些复选框,setInterval都会自动取消选中这些复选框 我该怎么做才能阻止这一切?Jquery Javascript在私有消息传递系统中自动取消选中复选框,jquery,ajax,Jquery,Ajax,你好。 我正在使用jQueryAjax构建一个私有消息传递系统,以便在不重新加载整个页面的情况下获取新消息。 我给了一个div一个名为“inbox\u display”的id。 我希望这个div能够使用1000ms的setInterval自动重新加载,这样新消息就可以在不重新加载整个页面的情况下显示 每个收件箱旁边都有一个复选框,删除邮件时将选中该复选框。 我现在遇到的问题是,无论何时选中这些复选框,setInterval都会自动取消选中这些复选框 我该怎么做才能阻止这一切? 谢谢将其重置为默认
谢谢将其重置为默认值的原因是您正在重新创建它们。当您使用循环数据创建动态元素时,因为您没有它们的状态,所以将它们重置为默认行为 更好的解决方案是使用
$.append()
函数。它将附加新元素而不重新提交其他元素
两个案例的样本
var data=[],interval=null,count=0;
函数addCheckbox(){
var htmlStr=“”;
data.forEach(函数(行){
htmlStr+=“”+行。标签+”
”
});
$(“#数据循环”).html(htmlStr);
}
函数追加复选框(行){
var chk=“”+行标签+“
”
$(“#UIState”).append(chk)
}
函数pauseInterval(){
窗口。清除间隔(间隔);
}
函数initInterval(){
间隔=设置间隔(函数(){
var _lbl=“Checkbox”+计数;
变量行={label:_lbl,值:'}
数据推送(row);
addCheckbox();
追加复选框(行);
计数++;
}, 3000)
}
(功能(){
initInterval();
})()
数据:
用户界面状态:
清除
当新消息到达时,您必须创建新元素,但如何添加它?你能分享一些代码吗?另外,如果每次都在数据上循环,就会丢失UI状态。我的jquery ajax代码写在一个文件中,而查询数据库的php代码写在另一个文件中。因此,显示复选框的html代码是在php代码中编写的。将整个代码放在问题中以帮助您。否则我恐怕你的问题就要结束了:(