Onclick函数工作,但onsubmit不起作用

onclick function works but onsubmit doesn't

本文关键字:onsubmit 不起作用 函数 工作 Onclick      更新时间:2023-09-26

我试图使一个提交按钮,当它被点击,然后图像将移动和另一个按钮,当它被点击,图像将重置。

如果我用onclick函数做,图像会移动,事情很好,但如果我用onsubmit函数,那么它就行不通了。有人能告诉我为什么吗?

这是我的脚本:

function catMoveRight()
{
    document.getElementById("cat").style.left=parseInt(document.getElementById("cat").style.left)+1+"px";
}
window.onload=function()
{
    catTimer = null;
    document.getElementById("start").onsubmit=function()
    {
        if(catTimer == null)
        {   
            catTimer = setInterval("catMoveRight()",1000);
        }
    }
}

这是我的HTML body:

<img src="cat.jpg" id="cat" style=" position: absolute; left: 10px;"/><br/>
<form action=" " method="post" id="start">
    <input type="submit" value="Start" style="position: absolute; left: 10px; top: 220px;" />
</form>

确保取消表单提交的默认操作。一种方法是从事件处理程序返回false:

document.getElementById("start").onsubmit = function()
{
    if(catTimer == null)
    {   
        catTimer = setInterval(catMoveRight, 1000);
    }
    return false;
};

也不需要传递字符串给setInterval。在没有必要的地方不要使用eval

例子: http://jsfiddle.net/QD3ev/1/