简单的Javascript HTML替换

Thr*_*ad7 1 javascript

我知道我在做些傻事.但我无法弄明白.我想在文档加载时立即替换标签内的一些文本.我知道函数正在执行.但它在getElementById语句中克隆了,我不知道为什么.输出应该说"New Junk".但总是说"Original Stuff".

<html>
<script>
window.onload = filltip();

  function filltip() {
   alert('xyz');
   var id = 'qourl';
   var txt = 'New Junk';
   //alert('current html=' + document.getElementById(id).innerHTML);
   document.getElementById(id).innerHTML = '?<span class="classic">' + txt +   
'</span>';
  }

</script>
<body>

<a href='#' id='qourl'>Original Stuff</a>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Nie*_*sol 7

将您的onload更改为:

window.onload = filltip;
Run Code Online (Sandbox Code Playgroud)

通过写入window.onload = filltip(),您实际上是filltip立即调用,并使用其返回值作为onload函数(在本例中undefined).通常,在分配函数时,()除非函数非常具体地返回另一个函数,否则您永远不会想要它.