<html>
    <body>
<input type="submit" value=" OK " onclick="send_code()">
<script language="javascript">
function send_code()
{
document.write("hi");
document.write("<input type=\"submit\" value=\" OK \" onclick=\"update_data()\">");
}
</script>
<script language="javascript">
function update_data()
{
document.write("hello");
}
</script>
    </body>
</html>请问下,在一个javascript中function里面按钮调用另一个function是如何实现的呢?

解决方案 »

  1.   

    你在write之后,原来的内容就被清空了.找不到后面的函数.
    你这个练习的题目内容,基本没什么实用意义,事不是这么做的.跳过去学其它有用的内容吧.
      

  2.   

    你好:
    第一,在同一个HTML文档里,各段JS代码是可以互相访问的。虽然在各自的<script></script>之中,但是它们      犹如是在同一对<script>之中一样。第二,你程序的第一段JS代码实际是在文档里生成了HTML的文本:<input type="submit" value="ok"        onclick="update_data()" />这种句子出现在HTML文档中,当然可以调用文档中的JS代码中的       函数update_data()
      

  3.   


    <html>
    <head>
    <script language="javascript">
    function send_code(){
    //document.write("hi");
    //document.write("<input type=\"button\" value=\" OK \" onclick=\"update_data()\">");
    var elem = document.getElementById("New");
    elem.innerHTML = "hi<input type=\"button\" value=\" OK \" onclick=\"update_data()\">";
    }
    function update_data(){
    document.write("hello");
    }
    </script>
    <script language="javascript">

    </script>
    </head>
      <body>
    <div id="New">
    <input type="button" value=" OK " onclick="send_code()">
    </div>
      </body>
    </html>
    LZ不要用document.write, 它会将整个页面的html全部覆盖掉, 所以你的代码里在第一次创建了button后会找不到原先定义好的方法. js作用域同2L, 整个页面共通. 而<script>标签如果放在body下, 它的解析与其它DOM一样是顺序执行的
      

  4.   

    document.write后整个页面的html全部都覆盖了,哪里还找的到函数update_data()