js文件代码如下:<script type="text/javascript">
var email;
var bemail="0"; // boolean value to check correctness
... ... // other parametersfunction chkEmail(email){ // use AJax for dynamic checking
    this.email=email;
    var xmlhttp;
    if (window.XMLHttpRequest) {
        xmlhttp=new XMLHttpRequest();
    }
    else {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function() { 
        if (xmlhttp.readyState==4 && xmlhttp.status==200) {
            document.getElementById("email").innerHTML=xmlhttp.responseText;
        }
    }
    if (/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(this.email)){ // regular expression checking
        bemail="1"; // to tell the web page the input is in right format
        xmlhttp.open("GET","chkemail.jsp?email="+email,true); xmlhttp.send();
    }
    else{
        bemail="0"; // to tell the web page the input is in wrong format
        xmlhttp.open("GET","chkemail.html",true); xmlhttp.send();
    }
}
</script>js文件与html文件放在同一文件夹中,html中部分代码如下:<head>
... ...
<script type="txt/javascript" src="PrivateRegistration.js"></script>
</head><body>
... ...
<form name="form1" onSubmit="return chkform();" method="post" action="connectDataBase.jsp">
<table width="600" cellpadding="2" cellspacing="2" align="center" style="margin-left:60px">
    <tr>
        <td width="130"><span class="style1">* </span>Email</td>
        <td><input size=40 name="txtEmail" type="text" onKeyUp="chkEmail(this.value)" onBlur="chkEmail(this.value)"></td>
        <td><div id="email"></div></td>
    </tr>
... ...
<body>现在js文件报错(dreamweaver cs5报错),没有任何提示。
只晓得是
    this.email=email;
这一行有问题(第一个function中的第一行),删掉之后又跳到下一行,删掉这个function之后跳到下一个function的第一行,如此循环
这样写有什么不对么?请各路大牛指教。

解决方案 »

  1.   

    代码加上高亮很难吗?
    <script type="text/javascript">
    var email;
    var bemail="0"; // boolean value to check correctness
    ... ... // other parametersfunction chkEmail(email){ // use AJax for dynamic checking
      this.email=email;
      var xmlhttp;
      if (window.XMLHttpRequest) {
      xmlhttp=new XMLHttpRequest();
      }
      else {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
      xmlhttp.onreadystatechange=function() {  
      if (xmlhttp.readyState==4 && xmlhttp.status==200) {
      document.getElementById("email").innerHTML=xmlhttp.responseText;
      }
      }
      if (/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(this.email)){ // regular expression checking
      bemail="1"; // to tell the web page the input is in right format
      xmlhttp.open("GET","chkemail.jsp?email="+email,true); xmlhttp.send();
      }
      else{
      bemail="0"; // to tell the web page the input is in wrong format
      xmlhttp.open("GET","chkemail.html",true); xmlhttp.send();
      }
    }
    </script>js文件与html文件放在同一文件夹中,html中部分代码如下:<head>
    ... ...
    <script type="txt/javascript" src="PrivateRegistration.js"></script>
    </head><body>
    ... ...
    <form name="form1" onSubmit="return chkform();" method="post" action="connectDataBase.jsp">
    <table width="600" cellpadding="2" cellspacing="2" align="center" style="margin-left:60px">
      <tr>
      <td width="130"><span class="style1">* </span>Email</td>
      <td><input size=40 name="txtEmail" type="text" onKeyUp="chkEmail(this.value)" onBlur="chkEmail(this.value)"></td>
      <td><div id="email"></div></td>
      </tr>
    ... ...
    <body>
      

  2.   

    这个函数的作用是ajax方式验证email(是否已注册),html文件同目录下存在chkemail.jsp验证文件吗?
      

  3.   

    是有的,chkEmail.html用来显示格式错误提示信息和chkEmail.jsp用来调用java连接数据库检查重复性。都存在于同一目录下。
      

  4.   

    那最好在JS控制台下看看具体报什么错误(Chrome、Safari、Firefox都带有js控制台调试工具)。
      

  5.   

    另外,jsp文件显然需要在服务器端运行,在DW中浏览的是本地本地文件还是访问服务器呢?
      

  6.   

    一般来说,你独立写一个js的文件时,是不需要加<script>与结尾的</script>的。
      

  7.   

    <script type="txt/javascript" src="PrivateRegistration.js"></script>
    ->
    <script type="text/javascript" src="PrivateRegistration.js"></script>
      

  8.   


    没问题,以前js放在html里面没有独立出来的时候一切都可以运行,没有任何问题,所以jsp这边是没错的。
      

  9.   

    感谢licip与thc1987两位的帮忙,问题已经解决了,加上text解决了调用失败问题,去掉<script></script>解决了dreamweaver报错问题。
    同时也感谢t5500的热心帮忙!