如何解决blur事件和click事件冲突问题?

时间:2023-01-09 19:46:22

如何解决blur事件和click事件冲突问题?


鼠标在输入框中时,查询内容。当点击【下一页】时,失去焦点,显示内容的窗口会关闭。假如可以点击下一页,当鼠标再次点击表格其他区域时,应触发blur事件关闭窗口,所以点击【下一页】时应重新获得焦点。代码如下:

如何解决blur事件和click事件冲突问题?

//下一页
$scope.nextPage= function (){
console.log("进入下一页方法....");
var currentPage =$("#"+tableid).find("#currentPage").text();
var countPage=$("#"+tableid).find("#countPage").text();
var currentPagenum=currentPage.replace(/[^0-9]/ig,""); //当前页
var countPagenum=countPage.replace(/[^0-9]/ig,"");//总页数
var input = $("#inputable"+tableuniqueflag);//获得input DOM
if(parseInt(currentPagenum)<parseInt(countPagenum)){
$scope.queryCenterReimbursData(keyword,tablequerycols,(parseInt(currentPagenum)+1));
}
if(input){
//重新获得焦点,下次才可以重新触发blur。
$(input).focus();
}
}

//关闭表格
$scope.closewin = function($event){
//判断点击【下一页】【上一页】失去焦点,但是不关闭窗口。
var target=$event;
var frombtn="";
if((target.relatedTarget)!=null){
frombtn=target.relatedTarget.id;
if(("nextPage"==frombtn)||("PreviouPage"==frombtn)){
return;
}
}
//判断点击【下一页】【上一页】失去焦点,但是不关闭窗口。

var checkrowid=$("#table"+tableuniqueflag+"").find(".checktrcolor").attr("id");//a2
//....中间代码略
$(mydivlocation).css('display','none');
}