jquery中的trigger()和preventDefault()方法

trigger()方法用户模拟用户操作,比较常见的一种情况就是输入框自动获得焦点:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="jquery.js"></script>
<title>jquery</title>
</head>

<body>
<form name="login">
  <input type="text" id="username"><br/>
  <input type="password" id="pwd"><br/>
  <input type="submit" value="登陆">
</form>
</body>
<script type="text/javascript">
   $("form[name=login] :input[id=username]").trigger("focus");
</script>
</html>

当用户打开这个界面的时候,用户名输入框就会自动得到焦点,所以用户就可以直接输入数据。

preventDefault()方法用户阻止元素的默认的行为,比如说:点击超链接的跳转的行为,点击提交按钮表单页面跳转的行为。

return false; 也有阻止元素默认行为的功能,此外它还可以停止动画的冒泡。


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="jquery.js"></script>
<title>jquery</title>
</head>

<body>
<a href="http://www.baidu.com" name="link">哇哦,这是一个超链接~</a>
</body>
<script type="text/javascript">
   $("a[name=link]").click(function(event){
      event.preventDefault();
   });
</script>
</html>

使用return false;

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="jquery.js"></script>
<title>jquery</title>
</head>

<body>
<a href="http://www.baidu.com" name="link">哇哦,这是一个超链接~</a>
</body>
<script type="text/javascript">
   $("a[name=link]").click(function(){
      return false;
   });
</script>
</html>

在进行表单验证的时候,当用户输入的数据不正确的时候,表单此时就不应该跳转,示例代码如下:


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript" src="jquery.js"></script>
<title>jquery</title>
<style type="text/css">
.red{
    color:red;
}
</style>
</head>

<body>
<form name="login" action="http://www.baidu.com">
  <input type="text" id="username"><br/>
  <input type="password" id="pwd"><br/>
  <input type="submit" value="登陆">
</form>
</body>
<script type="text/javascript">
   $("form[name=login] :submit").click(function(event){
       $target = $("form[name=login] :input[id=username]");
       var len = $target.val().length;
       if(len < 5){
          $target.parent().find("span.red").remove();
          $warn = "<span class='red'>用户名不能至少为5位</span>";
          $target.after($warn);
          alert(len);
          event.preventDefault();
       }
   })

</script>
</html>



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值