替换url查询字符串值

时间:2017-04-27 12:12:35

标签: javascript jquery

我使用数据属性

动态生成了url按钮
<button class="btn-Add" type="button" data-add-url="/AddProductToCart?mobileNo=__param__&amp;
productId=2051&amp;quantity=1">Add to Cart</button>

我有以下代码:

$(document).ready(function () {
    var mobileNo = 0;
    $(".btn-Add").click(function () {
        mobileNo = $(this).parent('.pro-Group').find('input[type=text]').val();
        var postURL = $(this).data('add-url');
        postURL.replace('__param__', mobileNo);
        alert(postURL); // i can still see __param__ , its not replaced
    });
});

为什么在使用replace方法后不会替换查询字符串值?

1 个答案:

答案 0 :(得分:2)

Javascript字符串是不可变的。因此,一旦他们的价值被分配,他们就无法改变他们的价值观。

因此,您必须使用新更改重新分配它们,或者必须在新变量中接收它们。通常我们会重新分配,因为除非您需要旧值,否则不需要引入新变量。

  postURL = postURL.replace('__param__', mobileNo);