2

我的html:

<select onchange="getval(this);">
  <option value="user1">user1</option>
  <option value="user2">user2</option>
  <option value="user3">user3</option>
</select> 


<a class="local" href="http://subDomain.www.mysite.com">Site</a>
<a class="local" href="http://subDomain.www.mysite.com/admin">Admin</a>
<a class="local" href="javascript:open_wins('http://subDomain.mysite.com', 'http://subDomain.mysite.com/admin');">Both</a>

我的脚本:

<script>
  function getval(sel) {
    $(document).ready(function() {

      var x = (sel.value);
      var regex = new RegExp(Globally replace the subdomain of urls on select change);

      $('.local').attr('href', function(i, val) {
        return val.replace(regex, x);
      });
    });
  }
</script>

我希望能够用我从表单中选择的选项值动态替换当前 subDomain 字符串,例如 user1。

这个脚本可能并不优雅,但它可以替换 url 中的静态字符串。我想要做的是替换“http://”和“.”之间的所有内容,但尽我所能,我无法找出正确的正则表达式来这样做。

4

1 回答 1

2
function getval(sel) {
    var x = (sel.value);
    var regex = new RegExp(/http:\/\/\w+\./g);
    $('.local').attr('href', function (i, val) {
        return val.replace(regex, "http://" + x + '.');
    });
}

这是一个工作小提琴:http: //jsfiddle.net/3jbfD/

于 2013-06-25T23:42:41.183 回答