我必须这样按钮:
<input type='submit' id='submit' class='processAnimation'>
<input type='reset' id='reset' class='processAnimation'>
现在我有两个js功能。启动ajax请求时调用第一个函数,并在完成ajax请求时调用seconf函数。
this.showLoading = function () {
backupsource = $('.processAnimation').attr('class');
$('.processAnimation').removeAttr('class').addClass('disabled-btn processAnimation');
$('.processAnimation').attr( 'backupsource', backupsource );
}
this.hideLoading = function () {
backupsource = $('.processAnimation').attr('backupsource');
if( backupsource != undefined ) {
$('.processAnimation').removeAttr('class').addClass( backupsource );
$('.processAnimation').removeAttr('backupsource');
}
}
编辑:以上两个功能正在工作,移动花替换了点击按钮。请求完成后,按钮返回。问题是,当我点击一个按钮时,它会用移动的花替换所有按钮(class = procesAnimation)。
由于
答案 0 :(得分:2)
由于您尚未发布您的点击事件绑定,我将快速猜测并说您的选择器设置不正确或与其他元素冲突。尝试这样的事情:
$('input').click(function(){
switch( $(this).attr('id') ){
case 'submit' :
ShowLoading();
break;
case 'reset' :
HideLoading();
break;
}
});
并将以下两种函数初始化的语法更改为:
function ShowLoading(){
//do your show loading procedure here
};
function HideLoading(){
//do your hide loading procedure here
};
答案 1 :(得分:2)
这是使用您当前的代码
$('.processAnimation').click(function (){
if($(this).attr('type')=='submit'){
//submit has been clicked
}else{
//reset has been clicked
}
});
但看起来你真的应该使用ID而不是类
答案 2 :(得分:1)
如果你有jQuery它很简单
$('#submit').click(showLoading)
$('#reset').click(hideLoading)
只是两种不同的事件绑定。
还是我错过了什么? :)