如何清空href查询

时间:2017-02-20 13:23:33

标签: javascript jquery

我想知道如何在点击事件后清除我的href查询。 所有我需要的是,如果我再次单击我的按钮,它应该清除旧查询并添加新的查询到href。

click(function() {
   //adds some queries to href
   var a_href = $('.link').attr('href');
   myArray.forEach(function(index){
     a_href = a_href + index;
     $('.link').attr('href', a_href)
   });
});

例如: -

默认状态:href =“www.example.com/_size - ”

old href:href =“www.example.com/_size-xs.m.l”

新的href应该覆盖旧的:href =“www.example.com/_size-l.xl.xxl

2 个答案:

答案 0 :(得分:0)

也许这会有所帮助?

<a href="#first" class="my_link">Click Me!</a>

<script>   
    $('.my_link').click(function (e) 
    {
        e.preventDefault();

        $(this).attr('href', '#another_link');
    });    
</script>

答案 1 :(得分:0)

如果我理解正确你正在寻找这样的东西:

var myArray = ["xs.m.l", "l.xl.xxl"];
var currentIndex = 0;
$('#btn').click(function() {
   var a_href = $('.link').attr('href');
   a_href = a_href.replace(/(size\-)(.*)$/,"$1"); // remove previous "query"
   a_href = a_href + myArray[currentIndex % myArray.length]; // add the new "query"
   $('.link').attr('href', a_href);
   $('.link').text(a_href)
   currentIndex++;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="btn">Change Link</button><a class="link" href="www.example.com/_size-">www.example.com/_size-</a>