16

我觉得这应该有效,但没有。不知道我做错了什么。

function addURL()
{   
$(this).attr('href', function() {
return this.href + '&cylnders=12';
}   


<a onclick="addURL();" href="/search-results/?var1=red&var2=leather">Click this</a>
4

3 回答 3

31

首先,您缺少一堆括号:

function addURL()
{
    $(this).attr('href', function() {
        return this.href + '&cylnders=12';
    });
}

其次,在您的代码中,“this”指的是窗口,而不是元素。试试这个:

<a onclick="addURL(this)" href="/search-results/?var1=red&var2=leather">Click this</a>

function addURL(element)
{
    $(element).attr('href', function() {
        return this.href + '&cylnders=12';
    });
}
于 2013-03-27T05:11:57.083 回答
4

为什么不向链接href添加一个ID或类以通过jquery识别它?在您可以将任何数据添加到 href 属性之前,您的链接似乎已被触发。

<a class="datalink" href="/search-results/?var1=red&var2=leather">Click this</a>
<script>

$('.datalink').attr('href', function() {
return this.href + '&cylnders=12';

});

</script>
于 2013-03-27T05:30:38.267 回答
2
     function addURL()
      {
     var data=window.location+"&cylnders=12";
     alert(data);
     }

试试这个概念。希望它会给你一些解决方案。

也试试这个

          function addURL()
          {
               window.location.href='/search-results/?var1=red&var2=leather&cylnders=12'
           }
于 2013-03-27T05:17:30.973 回答