我使用数据属性
动态生成了url
按钮
<button class="btn-Add" type="button" data-add-url="/AddProductToCart?mobileNo=__param__&
productId=2051&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方法后不会替换查询字符串值?
答案 0 :(得分:2)
Javascript字符串是不可变的。因此,一旦他们的价值被分配,他们就无法改变他们的价值观。
因此,您必须使用新更改重新分配它们,或者必须在新变量中接收它们。通常我们会重新分配,因为除非您需要旧值,否则不需要引入新变量。
postURL = postURL.replace('__param__', mobileNo);