javascript onsubmit的问题

form id="login" method="post" onsubmit="checkAccount()">
/* 每个标签前加< */
input type="submit" value=" login ">
/form>

    <script type="text/javascript">
//可延迟时间javascript code---------------------

var menuAccess = 0;
alert("外面");

function checkAccount()//checkAccount();
{
    menuAccess = 2;

    alert(menuAccess);
    test();
}


function test()
{
    alert(menuAccess);
}

请问为什么点击submit后会运行alert("外面");呢?为什么会执行checkAccount()函数之外的语句呢?谢谢!

6个回答

提交表单了吧,action地址都没写 你点击提交表单还是当前页面的。当前页面刷新了肯定要执行 暴露在script标签里的 alert方法了

因为提交了表单,所以重新执行了一次

写在函数里面的语句会在调用函数的时候执行,但是写在函数外面,也就是直接裸露在script标签中的语句是会直接执行的

在HTML中遇到标签<br> javascript会逐行解析,遇到alert直接输出,还有像console.log()这种。</p>

github_39785868
github_39785868 <br>是格式问题,应该是script标签
大约 3 年之前 回复

action="?"都是提交到本页。把method=get,你试试就可以看得出来。提交到本页刷新页面了,不就执行了alert吗

简单的说就是submit表单提交,页面就会刷新,页面刷新就会执行一次页面的全局js,全局alert就会执行。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问