鱼C论坛

 找回密码
 立即注册
查看: 2850|回复: 4

[已解决]新手求助 关于jquery事件绑定的问题

[复制链接]
发表于 2020-4-13 18:07:53 | 显示全部楼层 |阅读模式

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

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

x
我代码是在加载完,执行函数,那个函数是绑定事件的函数。为什么绑定事件的函数在事件还没触发就已经执行了。。。
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>Title</title>
  6.     <style>
  7.         .item{
  8.             width: 250px;
  9.             height: 60px;
  10.             position: relative;
  11.         }
  12.         .item input{
  13.             width: 200px;
  14.         }
  15.         .item span{
  16.             position: absolute;
  17.             top: 20px;
  18.             left: 20px;
  19.             font-size: 8px;
  20.             opacity: 0.8;
  21.         }
  22.     </style>
  23. </head>
  24. <body>
  25.     <div>
  26.         <form>
  27.             <div class="item">
  28.                 <input type="text" name="username" label="用户名">
  29.             </div>
  30.             <div class="item">
  31.                 <input type="password" name="pwd" label="密码">
  32.             </div>
  33.             <input type="submit" value="提交" >
  34.         </form>
  35.     </div>
  36.     <script src="jquery-3.5.0.js"></script>
  37. <script>
  38.     $(function () {
  39.         BindCheck();
  40.     });
  41.     function BindCheck() {
  42.         $('form input').click(function () {
  43.             $('form .item span').remove();
  44.             var flag=true;
  45.             $('form .item input[type="text"],.item input[type="password"]').each(function () {
  46.                 // ($(this).parent().find('span')).remove();
  47.                 var val=$(this).val();

  48.                 if(val.length<=0){
  49.                     var label = $(this).attr('label');
  50.                     var tag=document.createElement('span');
  51.                     tag.innerText=label+'不能为空';
  52.                     $(this).after(tag);
  53.                     flag=false;
  54.                                    }
  55.             });
  56.             return flag;
  57.         });

  58.     }


  59. </script>
  60. </body>
  61. </html>
复制代码
最佳答案
2020-4-13 19:13:25
Ootme 发表于 2020-4-13 18:10
就事件还没触发,但是已经执行一次函数了
我还没按下   ‘提交’  ,那个span语句就已经显示了

没啥问题啊,鼠标点进input  就显示 密码不能为空  你就是这样设计的啊

和提交按钮没关系啊   提交只不过把参数构造到url里  发送get请求
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-4-13 18:10:01 | 显示全部楼层
就事件还没触发,但是已经执行一次函数了
我还没按下   ‘提交’  ,那个span语句就已经显示了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-13 19:13:25 | 显示全部楼层    本楼为最佳答案   
Ootme 发表于 2020-4-13 18:10
就事件还没触发,但是已经执行一次函数了
我还没按下   ‘提交’  ,那个span语句就已经显示了

没啥问题啊,鼠标点进input  就显示 密码不能为空  你就是这样设计的啊

和提交按钮没关系啊   提交只不过把参数构造到url里  发送get请求
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-14 14:32:12 | 显示全部楼层
wp231957 发表于 2020-4-13 19:13
没啥问题啊,鼠标点进input  就显示 密码不能为空  你就是这样设计的啊

和提交按钮没关系啊   提交只 ...

那怎样才能让 '密码不能为空 '  在按下提交按钮的时候才显示啊..
我本意不是这样的- -,我还以为这个判断函数是在按下按钮才触发的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-14 14:39:58 | 显示全部楼层
wp231957 发表于 2020-4-13 19:13
没啥问题啊,鼠标点进input  就显示 密码不能为空  你就是这样设计的啊

和提交按钮没关系啊   提交只 ...

我懂了  我绑定错事件了= =,没有好好检查代码就出来提问的下场 哎。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-18 05:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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