本帖最后由 v1srine 于 2012-04-08 11:42:35 编辑

解决方案 »

  1.   

    提交的时候,用ajax在页面后 判断登录与否,如果没登录,就阻止提交,跳出登录框
      

  2.   

    用submit按钮提交可以为表单注册onsubmit事件,进行验证等操作,返回return false;来阻止表单提交。
    return true;进行表单提交。
    用button按钮onclick事件提交表单可以在单击事件中进行验证等操作,如果需要提交表单就用form.submit()进行提交就行了。否则就不提交表单。
    也可以用ajax提交。根据返回值判断是否跳转。
      

  3.   

    我这个例子没有在新弹出层或者新弹出页面显示登录框,这里做个例子在本页显示,实际应用的时候应该改成更适合的形式<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>    
    </head>
    <body>
    <script type="text/javascript" src="jquery-1.6.4.min.js" ></script> 
     <form id="form1" action="savenote.asp" method="post" onsubmit="return checklogin();" >
     <textarea rows="10" cols="100" name="note" ></textarea>
     <input type="submit" value="保存发言" />
     </form>
     <script type="text/javascript" >
         function checklogin() {
             jQuery.ajax({
                 url: 'checklogin.asp?' + Math.random(),
                 success: function(result) {
                     alert(result);
                     if (result == "1") {
                         alert("你已经登录,可以继续提交");
                         document.getElementById("form1").submit();
                     } else {
                         alert("你没有登录,请登录");
                         $("#login").show();
                     }
                 },
                 async: false
             });
             return false;
         }
     </script>
     <div id="login" style="display:none;">
     用户名<input />
     密码:<input />
     <input type="button" value="登录" />
     </div>
    </body>
    </html>
      

  4.   

    登录的框,我只是在本页显示,实际应用的时候你自己改一下<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>    
    </head>
    <body>
    <script type="text/javascript" src="jquery-1.6.4.min.js" ></script> 
     <form id="form1" action="savenote.asp" method="post" onsubmit="return checklogin();" >
     <textarea rows="10" cols="100" name="note" ></textarea>
     <input type="submit" value="保存发言" />
     </form>
     <script type="text/javascript" >
         function checklogin() {
             jQuery.ajax({
                 url: 'checklogin.asp?' + Math.random(),
                 success: function(result) {
                     alert(result);
                     if (result == "1") {
                         alert("你已经登录,可以继续提交");
                         document.getElementById("form1").submit();
                     } else {
                         alert("你没有登录,请登录");
                         $("#login").show();
                     }
                 },
                 async: false
             });
             return false;
         }
     </script>
     <div id="login" style="display:none;">
     用户名<input />
     密码:<input />
     <input type="button" value="登录" />
     </div>
    </body>
    </html>