我想用'30'
替换id =“olderpost”中的所有'20'我做了以下事情:
<div id="olderpost"><a onclick="$.ajax({ dataType: 'script', url: '/actions/olderpost/20'}); return false;" href="/actions/olderpost/20">View older actions</a></div>
$('#olderpost').html().replace('20', '30');
但没有改变。
答案 0 :(得分:2)
replace
不会改变字符串。试试这个:
$('#olderpost').html($('#olderpost').html().replace(/20/g, '30'));
答案 1 :(得分:0)
您的代码是多余的 - 您在代码中有两次相同的URL。为了消除这种冗余,我提出了这个初始状态:
HTML:
<div id="olderpost">
<a href="/actions/olderpost/20">View older actions</a>
</div>
JavaScript的:
$('#olderpost a').click(function(e) {
e.preventDefault();
$.ajax({dataType: 'script', url: $(this).attr('href')});
});
因此,URL存储在锚点的href
属性中。然后,如果启用了JavaScript,则单击处理程序将发出Ajax请求,并且该请求的URL将从相同的href
属性中获取。
要替换网址,只需修改锚点的href
属性:
$('#olderpost a').attr('href', function(i, v) {
return v.replace('20', '30');
});