0

我有问题。下面是我的代码:

$(function() {  
    $('#find').on("click",function(){
        name = $('#q_name').text();
        location = $('#q_location').text();
        city = $('#q_city').text();
        alert("Clicked");
    });
});

当单击此锚标记时,idfind出现“已单击”警报,然后重新加载整个页面。我p分别从标签中获取名称、位置和城市值。

此外,当我只保留一项任务并丢弃其他两项时,页面重新加载会停止并且只会出现警报。这是开始,因为我必须通过 AJAX 将收集到的数据发送到控制器功能,但首先我想停止重新加载页面。我究竟做错了什么?

PS:我对 jQuery 很陌生,只知道它的一些基础知识。请帮忙。

4

4 回答 4

1

将您的location变量重命名为location1. 我认为它指的是浏览器位置。

于 2013-10-17T09:18:33.810 回答
1

您需要使用 停止链接的默认行为(即更改 URL)event.preventDefault,试试这个:

$('#find').on("click", function(e){
    e.preventDefault();
    name = $('#q_name').text();
    location = $('#q_location').text();
    city = $('#q_city').text();
    alert("Clicked");
});
于 2013-10-17T08:46:28.987 回答
0

要停止锚标签的页面重新加载和导航行为,您可以使用javascript:void(0)event.preventDefault()

<a href="javascript:void(0)" id="find">Click</a>

或者

$(function() {  
    $('#find').on("click",function(e){
        e.preventDefault()
        name = $('#q_name').text();
        location = $('#q_location').text();
        city = $('#q_city').text();
        alert("Clicked");
    });
});

现在您的页面不会在单击此锚标记时重新加载。

于 2013-10-17T09:19:15.513 回答
0

尝试这个。简单易行

修改 href 属性,如下所示

<a href="javascript:void(0)" onclick="whateverFunction()" >
于 2013-10-17T09:15:04.907 回答