2017-02-20 82 views
-3

我想知道如何在点击事件后清除我的href查询。 所有我需要的是,如果我再次点击我的按钮,它应该清除旧的查询,并添加新的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-”

老HREF:HREF =“www.example.com/_size-xs.ml “

新的href应覆盖旧:HREF =”?www.example.com/_size-l.xl.xxl

+0

你想实现什么? – Hemal

+2

要清除'href':'$('。link')。attr('href','')' –

+1

发表一个例子! 'myArray'包含什么?输出应该如何?如果有重复,会发生什么? –

回答

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>

0

也许这将帮助

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

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

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