Javascript需要正则表达式添加到字符串的末尾

时间:2011-03-16 16:00:10

标签: javascript regex

我正在尝试使用regex和jquery在我的href末尾添加一个变量。这就是我到目前为止所做的:

$('#survey-click1').click(function(event) {
      playerPause();
      $("a[href^=http://d.surveysonline.com/]")
          .each(function()
      {
        this.href = [regex goes here];
      });
      return false;
});

我只是想在我点击的网址末尾添加一个变量,以便附上我刚看过的视频是否有预卷。这可以通过将其附加到我的网址代码[&preroll="+Kdp3State.preroll+"]的末尾来轻松完成。我如何检测href字符串的结尾以将其附加到它?

由于

3 个答案:

答案 0 :(得分:1)

假设这实际上是您想要附加到您的网址的,那么这应该有效:

$("a[href^=http://d.surveysonline.com/]").each(function() {
    $(this).attr('href', $(this).attr('href', '&preroll='+Kdp3State.preroll);
});

除了使用与正则表达式有些类似的CSS选择器之外,这个问题似乎与主题无关。

答案 1 :(得分:1)

不需要正则表达式,只需:

this.href += 'string_to_be_appended';

e.g。

this.href += '&preroll=' + encodeURIComponent(Kdp3State.preroll);

请注意使用encodeURIComponent来确保生成的URI中的任何特殊字符(+,%等)都已正确编码。

答案 2 :(得分:0)

this.href += "&preroll=" + Kdp3State.preroll

this.href = this.href.replace(/&preroll=[^&]+/g, "") + "&preroll=" + Kdp3State.preroll;