使用JQUERY更改URL的一部分

时间:2017-07-01 20:16:23

标签: jquery

我需要使用jquery更新下拉更改事件的URL参数。当我在URL中有一个参数时,我得到的代码效果很好,但是当我得到很多参数时,这个国家/地区就会被删除。

这里是代码:

$('#state-input').change(function () {

      var hrefElement = $("#municipality-input");
      var href = hrefElement.data('autocomplete-url');

      href = href.replace(/(stateId=)[A-Z].+/ig, '$1' + $(this).val());
      hrefElement.attr('data-autocomplete-url', href);
});

页面加载时的网址:

  

数据自动填充-URL = “/ SKU / GetCities STATEID = QC&安培; countryId = CA”

关于变更事件

  

数据自动填充-URL = “/ SKU / GetCities?STATEID = NB”

我想要的是什么:

  

数据自动填充-URL = “/ SKU / GetCities STATEID = NB&安培; countryId = CA”

有没有办法让这个国家稍微改变一下我得到的代码?

由于

1 个答案:

答案 0 :(得分:1)

更换正则表达式时忘了第二部分。 也许你需要这样做:

href = href.replace(/(stateId=)[A-Z]+(.*)/ig, '$1' + $(this).val() + '$2');

结果将是:

$('#state-input').change(function () {

      var hrefElement = $("#municipality-input");
      var href = hrefElement.data('autocomplete-url');

      href = href.replace(/(stateId=)[A-Z]+(.*)/ig, '$1' + $(this).val() + '$2');
      hrefElement.attr('data-autocomplete-url', href);
});