如何在单击时更改href值

How to change href value on click

本文关键字:href 单击      更新时间:2023-09-26

我有这个链接<a href="/Countries/388/10">next</a>。当我点击下一个a href将值更改为<a href="/Countries/388/20">next</a>而不刷新时,我该如何实现这一点。当用户再次点击30…再次点击40…有什么想法吗?像计数器一样,点击后添加10

$("a").click(function(e){
    e.preventDefault();
    $(this).attr('href', '/Countries/388/20');
});

您需要使用preventDefault()来避免重定向。

让它像反

$("a").click(function(e){
e.preventDefault();
var _url = $(this).attr("href");
var _url_start = '/Countries/388/';
var _url_end = parseInt(_url.substr(url.lastIndexOf("/"), url.length-1));
$(this).attr('href', _url_start+(_url_end+10)');
    });

我认为最简单的方法是使用RegEx:

$('a.next').click(function(event){
    event.preventDefault(); //Prevent the link from going anywhere
    var href=$(this).prop('href');
    var RegEx = /(.*)'/(['d]+)/g
    var Number=href.replace(RegEx,'$2');
    Number=parseInt(Number)+10
    href=href.replace(RegEx,'$1'+'/'+Number);
    $(this).prop('href', href);
});

示例

更新

每次重新加载页面时这样做最好使用您正在使用的后端语言(PHP、.NET等),但如果必须使用jQuery,则应该能够做到这一点。

$('a.next').click(function(event){
    event.preventDefault(); //Prevent the link from going anywhere
    var href=$(this).prop('href');
    var RegEx = /(.*)'/(['d]+)/g
    var URL = href.replace(RegEx,'$1')
    if (window.location.href.indexOf(URL) > -1) { // If this is the current URL
        var Number=window.location.href.replace(RegEx,'$2');
        Number=parseInt(Number)+10
        $(this).prop('href', URL + '/' + Number);
    } else {
        var Number=href.replace(RegEx,'$2');
        Number=parseInt(Number)+10
        $(this).prop('href', URL + '/' + Number);
    }
});

试试这个:

$('a').click(function(){
   $(this).prop('href','/Countries/388/20');
});

标记:

   <a id="myLink" href="/Countries/388/10">next</a>

jQuery:

   $('#myLink').click(function() { $(this).attr('href', '/Countries/388/20' });

在这里,我为您的a元素提供了一个id,用于选择目的。jQuery根据id选择此元素,并将新值分配给href属性。

尽管我不得不说,这似乎是一个奇怪的要求。

这个怎么样

代码:

$('a').click(function(e){
    var countarr = $(this).attr('href').split('/');
    var countval = countarr.pop();
    countval = parseInt(countval,10) + 10;
    var url =  countarr.join('/') + "/" + countval;
    alert(url);
    $(this).attr('href',url);
    e.preventDefault();
})

如果要重定向,请删除e.preventDefault();