在进行AJAX调用时受JavaScript onCLick()的限制

在进行AJAX调用时受JavaScript onCLick()的限制,javascript,jquery,html,ajax,spring,Javascript,Jquery,Html,Ajax,Spring,我正在处理一个现有的项目,大量使用jQueryAJAX调用。现有页面有三个不同的部分:标题、左侧菜单和主要内容。通过springmvc实现每当从Spring控制器返回视图时,它都会更新整个页面 现在,由于我使用的是其中一个菜单项,但是有选项卡内容,所以我使用jQuery操作选项卡中的数据,使用jQuery。当我必须使用超链接时,我不能使用 $.ajax({ 类型:。。。, 网址:。。。, 成功:功能(响应){ $('#tab1 content').empty().html(响应); } });

我正在处理一个现有的项目,大量使用
jQuery
AJAX
调用。现有页面有三个不同的部分:标题、左侧菜单和主要内容。通过
springmvc实现
每当从Spring控制器返回视图时,它都会更新整个页面

现在,由于我使用的是其中一个菜单项,但是有选项卡内容,所以我使用
jQuery
操作选项卡中的数据,使用
jQuery
。当我必须使用超链接时,我不能使用

$.ajax({
类型:。。。,
网址:。。。,
成功:功能(响应){
$('#tab1 content').empty().html(响应);
}
});

所以我的问题是-是否有其他方法可以使用
href
属性的
标记并更新带有响应视图的窗口

我不确定我是否理解正确。你能试试这样的吗

<a href="http://www.stackoverflow.com">Details</a>
<script>
    $('a').click(function(e) {
        e.preventDefault();

        var href = $(this).attr('href');
        loadDetail(href);
    });

    function loadDetail(url) {
        alert("Load from: " + url);

        // Ajax call
    }
</script>

$('a')。单击(函数(e){
e、 预防默认值();
var href=$(this.attr('href');
loadDetail(href);
});
函数loadDetail(url){
警报(“从:+url加载”);
//Ajax调用
}

您可以防止标签的默认行为,只需从函数返回false即可。 看到这把小提琴了吗

或者就像在javascript中的Michael answer attach事件中一样,您将在回调函数中使用
preventDefault()
stopPropagation()
获得事件实例

<a href="http://www.stackoverflow.com">Details</a>
<script>
    $('a').click(function(e) {
        e.preventDefault();

        var href = $(this).attr('href');
        loadDetail(href);
    });

    function loadDetail(url) {
        alert("Load from: " + url);

        // Ajax call
    }
</script>