鱼C论坛

 找回密码
 立即注册
查看: 3001|回复: 6

[已解决]网上的一段教程代码,不晓得它的流程

[复制链接]
发表于 2020-1-8 08:59:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script>
function validateForm() {
    var x = document.forms["myForm"]["fname"].value;
    if (x == null || x == "") {
        alert("需要输入名字。");
        return false;
    }
}
</script>
</head>
<body>

<form name="myForm" action="demo_form.php"
onsubmit="return validateForm()" method="post">
名字: <input type="text" name="fname">
<input type="submit" value="提交">     //点击提交后 ,首先判断是否空值,执行的是validateForm()中的 if (x == null || x == "") {  语句,那么输入正确是执行的哪部分呢,哪句代码主管这个东东
</form>

</body>
</html>
最佳答案
2020-1-8 10:26:25
1.先执行onsubmit事件,仔细看,return validateForm() 这个是返回执行结果是否成功,成功的话会继续执行,否则,就不执行了
2.再看form中的 action="demo_form.php",这个是提交表单的地址,如果第一步返回了成功,那么,就会向该action提交表单数据。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-1-8 10:26:25 | 显示全部楼层    本楼为最佳答案   
1.先执行onsubmit事件,仔细看,return validateForm() 这个是返回执行结果是否成功,成功的话会继续执行,否则,就不执行了
2.再看form中的 action="demo_form.php",这个是提交表单的地址,如果第一步返回了成功,那么,就会向该action提交表单数据。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-8 10:30:26 | 显示全部楼层
zjz894251se 发表于 2020-1-8 10:26
1.先执行onsubmit事件,仔细看,return validateForm() 这个是返回执行结果是否成功,成功的话会继续执行, ...

function validateForm() {
    var x = document.forms["myForm"]["fname"].value;
    if (x == null || x == "") {
        alert("需要输入名字。");
        return false;
    }
}
这个函数是默认返回TRUE吗  没看到相关代码啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-8 10:32:30 | 显示全部楼层
本帖最后由 wp231957 于 2020-1-8 10:33 编辑
zjz894251se 发表于 2020-1-8 10:26
1.先执行onsubmit事件,仔细看,return validateForm() 这个是返回执行结果是否成功,成功的话会继续执行, ...


是不是可以这样理解:
<form name="myForm" action="demo_form.php"
onsubmit="return validateForm()" method="post">
这里的onsubmit 并不是必填项目,但是如果有  就优先执行它??

还有  这里的method="post" 和 get 有神马区别吗??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-8 10:34:59 | 显示全部楼层
默认是什么都没返回,这里面其实做了兼容的,false是中断标记,什么都不返回说明无异常,顺序执行。做前端的东西,兼容很重要,null,undefined,false,这3个含义大不一样,仔细品一下。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-8 10:37:21 | 显示全部楼层
wp231957 发表于 2020-1-8 10:32
是不是可以这样理解:

这里的onsubmit 并不是必填项目,但是如果有  就优先执行它??

对,不是必填,又事件监听会优先执行监听。post和get是http协议的两种提交方法,这个百度即可
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-1-8 10:38:18 | 显示全部楼层
zjz894251se 发表于 2020-1-8 10:37
对,不是必填,又事件监听会优先执行监听。post和get是http协议的两种提交方法,这个百度即可

好的,多谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 10:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表