这段js代码里的with(form)什么意思?

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"
contentType="text/html; charset=utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<br> function check(form){<br> with(form){<br> if(username.value == &quot;&quot;){<br> alert(&quot;用户名不能为空!&quot;);<br> return false;<br> }<br> if(password.value == &quot;&quot;){<br> alert(&quot;密码不能为空&quot;);<br> return false;<br> }</p> <pre><code> return true; } } </code></pre> <p>







学生籍贯管理系统

<div class="container"> 
<div align="center">
   <form class="well" name="login" action="user/checkLogin.action" method="post" onsubmit="return check(this)">
        <label>用户名</label> <input type="text" name="username" class="span3" placeholder="用户名"> <p/>
        <label>密    码</label>   <input type="password" name="password" class="span3" placeholder="密码"><p/>
        <button type="submit" id="btn_login" class="btn btn-success">登陆</button>&nbsp;&nbsp;&nbsp;&nbsp;<button type="button" class="btn btn-primary" onclick="window.location.href='register.jsp'">注册</button>
  </form>   
 </div> 




onsubmit="return check(this)里的this咋理解?

第一个问题:前面那个js代码不知道是你复制出错还是什么,看不懂。
第二个问题:this代表当前绑定事件的dom对象,即你代码的:

with限定作用域,此后,form.username.value 可以简写为 username.value 省略 form。
this表示表单,也就是check函数的参数form。

onsubmit中的函数为false,表单验证不通过,就不提交数据。

form 标签。。怎么字体消失了。。

with可以方便地用来引用某个特定对象中已有的属性,但是不能用来给对象添加属性。with(form){username.value=.....}相当于form.username.value=
....
this指向触发事件的事件源,submit事件是form表单的事件,那么this就是指向form表单对象

with限定作用域,此后,form.username.value 可以简写为 username.value 省略 form。

但是with在严格模式下不生效,会报错,不推荐使用

还是多看一些基本类的书籍在学习,否则你很难理解的。

尽量代码与html分离,这样看起来很舒服,这些代码混在一起很凌乱。 页面的this就是返回触发事件的这个对象。