下面是一段javascript代码,再show()中我想调用showResult()可我用firebug总是报说showResult()未定义,这些代码顺序如下,都在同意js中,可为何说showResult()函数没有定义呢?
function replay()
{
document.write("<input type='button' onclick='javascript:generateNewSign()' value='replay'>");
}function showResult()
{
document.write(variable[8]);
replay();
}function show()
{
document.write("<input type='button' onclick='javascript:showResult()' value='show'>");
}function generateNewSign()
{
for( i=0; i<99; ++i )
{
variable[i]=signs[Math.floor(Math.random()*signs.length%9)]
}
for( i=8; i<99; i=i+9)
{
variable[i]=variable[8];
}
printSign();
show();
}

解决方案 »

  1.   

    怎么这个多document.write,最好写成 容器.innerHTML
      

  2.   

    document.write("<input type='button' onclick='javascript:generateNewSign()' value='replay' />");document.write("<input type='button' onclick='javascript:showResult()' value='show' />"); 先把html结束符写上再试试~~经常报错就是由于这个原因~~
      

  3.   

    我加上结束符了,我就是想开始的时候先generateNewSign()函数产生符号,然后用show()函数来显示结果,然后再重新产生符号再显示结果
    generateNewSign()->show()->showResult()->replay()-
    |________________________________________________|
    这样一个过程,可我改了半天要么是死循环,要么是函数没有定义,我刚接触javascript不知道为什么,这些代码全部写在一个js里,我在js里使用generateNewSign()程序只能执行一次然后就不再执行了,是否是我的show()和replay()方法有问题?
      

  4.   

    document.write以后页面重写了,原来的函数都没有了,showResult当然未定义...