我有一些我偶尔访问的网址,其中包含HREF中指定的页码。这些变化,我需要跟踪访问的最后一个。我一直在通过剪切粘贴到一个文本文件中,但想用本地HTML页面替换它,我可以使用javascript进行更新。下面是我创建了一个例子:Javascript HREF更新
<script type="application/javascript">
function update(n,newvalue) {
var link = document.getElementById('l' + n);
var href = link.getAttribute('href', 2);
var textfield = document.getElementById('p' + n);
var parts = new Array();
parts = href.split('-');
parts[1] = 'p' + newvalue;
textfield.setAttribute('value', newvalue);
var newhref = parts.join('-');
link.setAttribute('href',newhref);
}
</script>
<form>
<dl>
<dt><a target="_blank" id="l1" href="http://foobar.org/t5-p8-data.html">Task 5 Data<a></dt>
<dd>Page: <input type="text" id="p1" value="8" onChange="update(1,this.value)" /> </dd>
</dl>
</form>
</html>
当我在文本字段中输入一个新值和跟踪通过这个与萤火虫它似乎做工精细,即连结href中值和文本字段值在DOM得到改变,但是当函数退出时,它们会回到页面中的原始值。我究竟做错了什么?
对于我在Fx4中工作 - 我会亲自使用onKeyUp而不是onchange – mplungjan 2011-04-30 16:35:29
我认为正确的类型是'text/javascript' - 至少这就是基本上到处都是的。 – ThiefMaster 2011-04-30 16:39:29
奇怪。我在Fx 3.6.17和IE 8中试用它,它的行为如前所述。什么可以解释这一点? – Steve 2011-04-30 16:41:22