在ajax调用之后,当我单击某些页面跳转到顶部时
After ajax call when i click something page jump to top
我已经做了一个ajax调用来搜索记录。结果来自 ajax 后,当我尝试单击它时,页面跳转到顶部。
我的 ajax 调用函数:
function ajax_search_primarycare(keyword, userId){
if(keyword.length >= 3){
var pricareId = jQuery('#primarycare_provider_id').val();
var pricareName = jQuery('#primarycare_provider_name').val();
var pricareStatus = jQuery('#primarycare_icon_status').val();
var primary_badge_status = jQuery('#primary_badge_status').val();
$.ajax({type: "POST",
url: "ajax_search_primarycareprovider.php?keyword="+keyword+"&userId="+userId+"&pricareId="+pricareId+"&pricareName="+pricareName+"&pricareStatus="+pricareStatus+"&primary_badge_status="+primary_badge_status,
success: function(msg){
$("#sect_primarycare").html(msg);
}
});
return false;
}
我在 ajax 调用后添加了返回 false,但仍然没有结果。
提前致谢
您可能因为后面有指向"#"的链接而跳到顶部?可能有一个事件处理程序附加到锚元素标记链接到"#"。事件处理程序完成后,除非事件处理程序返回 false,否则将执行默认操作(指向 # 的链接)。您的 Ajax 调用已经返回 false,但这可能不是事件处理程序?解决方案是确保实际事件处理程序返回 false。
为了说明这一点:user2675751确实提出了正确的解决方案。
有时(我不知道什么时候,但我在我的一些脚本上观察到了相同的行为)return false;
是不够的。
您可以尝试在href
上添加javascript:void(0);
这总是对我有用。
你在错误的地方返回了假!
ajax_search_primarycare
函数的结果是 false,所以假设你用这样的函数来调用这个函数
$("#subbmit").click(function() {
ajax_search_primarycare('k',1);
});
你必须用这个函数返回假
$("#subbmit").click(function() {
return ajax_search_primarycare('k',1);
});
将您的成功回调更改为以下内容:
success: function(msg){
$("#sect_primarycare").html(msg);
$("#sect_primarycare").find('a').on('click', function(e) {
e.preventDefault();
});
}
相关文章:
- electronic BrowserWindow的最小高度和宽度在hide()show()方法之后不起作用
- 在chrome.tabs.onCreated之后加载HTML页面
- 在Jquery detachment()和appendTo()之后定位元素
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- AngularJS:ng之后,重复$scope值未按预期更新
- 为什么元素的宽度在页面加载之后和那一刻之后不同
- jQuery粘性插件可变顶部间距
- 使用jQuery更改元素的顶部位置
- 没有在Angular应用程序中定义firebase(在firebase迁移之后)
- Javascript复选框函数:;缺少:在属性id之后"
- 背景图像顶部的滚动图像不移动
- 滚动然后捕捉到顶部而不是取消捕捉
- 当带有渲染器的DOM元素不在屏幕顶部时,移动了场景的坐标
- 在刚刚调用的append函数之后,jquery.height()不会返回实际值
- 正在链接添加了以下内容::在之后
- JQuery hide()在show()之后不起作用,反之亦然
- 在ajax调用之后,当我单击某些页面跳转到顶部时
- 在Javascript确认对话框之后,网页将转到顶部.如何阻止这种情况
- 如何防止页面滚动到顶部,在单击超链接之后,以及基于服务器的刷新之后
- 为什么'使用strict'通常在IIFE之后(而不是在脚本的顶部)