Jquery 当页面最初加载到changepage上时,addclass、removeclass不工作
我有一个3页的应用程序。让我们把它们叫做Jquery 当页面最初加载到changepage上时,addclass、removeclass不工作,jquery,jquery-mobile,mobile,addclass,Jquery,Jquery Mobile,Mobile,Addclass,我有一个3页的应用程序。让我们把它们叫做A,B和C 我调用Ajax来构建页面,并根据标志(比如flag1)更改图标,根据flag2更改页面。图标显示在具有不同ID的所有3个页面上sel1、sel2和sel3 除了在会话中第一次将页面更改为a、B或C页面外,它在大多数情况下都可以正常工作。在这种情况下,图标不会切换。谢谢你的帮助 下面是代码片段 $(document).ready(function(){ $("#sendajax").click(function() {
A
,B
和C
我调用Ajax来构建页面,并根据标志(比如flag1
)更改图标,根据flag2
更改页面。图标显示在具有不同ID的所有3个页面上sel1
、sel2
和sel3
除了在会话中第一次将页面更改为a、B或C页面外,它在大多数情况下都可以正常工作。在这种情况下,图标不会切换。谢谢你的帮助
下面是代码片段
$(document).ready(function(){
$("#sendajax").click(function() {
$.ajax({ type: "POST", url: "servlet2", datatype: "json",
success: populatedata});
};
});
Function populatedata(data){
if (data.flag1 == "A" ){
buildpageA(data);
$.mobile.changePage("#pageA", {transition:"fade"});
$("#pageA").trigger('refresh');
} else if (data.flag1 == "B" ){
buildpageB(data);
$.mobile.changePage("#pageB", {transition:"fade"});
$("#pageB").trigger('refresh');
}else if(data.flag1 == "C" ){
buildpageC(data);
$.mobile.changePage("#pageC", {transition:"fade"});
$("#pageC").trigger('refresh');
}
Function buildpageA(data){
if (data.flag2 != "")
$('#sel1').attr('data-icon', 'info').find('.ui-icon').
removeClass('ui-icon-info').addClass('ui-icon-error');
else
$('#sel1').attr('data-icon', 'error').find('.ui-icon').
addClass('ui-icon-info').removeClass('ui-icon-error');
$("#sel1").trigger('refresh');
……
}
}
Function buildpageB(data){
if (data.flag2 != "")
$('#sel2').attr('data-icon', 'info').find('.ui-icon').
removeClass('ui-icon-info').addClass('ui-icon-error');
else
$('#sel2').attr('data-icon', 'error').find('.ui-icon').
addClass('ui-icon-info').removeClass('ui-icon-error');
$("#sel2").trigger('refresh');
……
}
Function buildpageC(data){
...... you get the point .}
JSP:
要更改图标,请使用
.buttonMarkup
$('#sel').buttonMarkup({ icon: 'error' });
注意:对于jQuery Mobile,不要使用.ready()
,请坚持使用jQuery Mobile事件
$('#sel').buttonMarkup({ icon: 'error' });