+ -
当前位置:首页 → 问答吧 → 跪求!!jquery高手解答!

跪求!!jquery高手解答!

时间:2009-11-04

来源:互联网

html页
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<script src="js/jquery-1.3.2.min.js" type="text/javascript" language="javascript"></script>
<script>
  
 $(document).ready(function(){
         
  $("#theForm").submit(function(){
             
   if(!CheckValues($("#name"))){
    
    $("#msg").html("请输入用户名");
    $("#name").focus();
    return false; 
   }
   
   if(!CheckValues($("#password"))){
   
    $("#msg").html("请输入密码");
    $("#password").focus();
    return false; 
   } 
   $("#msg").html("验证中...");
   GetResult();
  });  
 });
 
 function CheckValues(values){
  
  if(values.val() == ""){
   
   return false;
   
  }else{
   
   return true; 
  }
 }
 
 function GetResult(){
  $.post("ajaxtest.php",{user_name:$("#name").val(),user_password:$("#password").val()},function(feedback){
   
   ///$("#msg").html(feedback);
   alert("go here");
   location.href="test.php";
   
  });   
 }
 
</script>
</head>
<body>
<form id="theForm" name="theForm" method="post" >
  <p>
   <div id="msg"></div>
  </p>
  <p>
    <input type="text" name="name" id="name" />
  </p>
  <p>
    <input type="password" name="password" id="password" />
  </p>
  <p>
    <input type="submit" name="button" id="button" value="登陆" />
  </p>
</form>
</body>
</html>
ajaxtest.php页
<?php
 session_start();
 $_SESSION['name'] = $_POST['user_name'];
 
 echo '132456';
  
?>

现在出现的问题是:html页面有时候跳转成功,有时候不跳转,没反应,就是不执行页面跳转那行语句。
不执行跳转说明调用失败?
但是在ajaxtest.php 页面中不管html页跳不跳转,它都接收到了值。而且session变量成功被赋值。
这是为什么?
我都是点好几下才会执行跳转那行。这是为什么啊?我的思路有问题吗?现在就想用jquery的$.post做用户登陆。
请各位解释一下啊~~~~谢谢谢谢谢谢谢谢!!!!!!
在线等!!!



我用SESSION保存JQUERY $.post传过来的值。好用,在别的页面掉用session变量好用

作者: jinxuezhi   发布时间: 2009-11-04

自己顶,高手回答一下啊~~谢谢

作者: jinxuezhi   发布时间: 2009-11-04

继续等....

作者: jinxuezhi   发布时间: 2009-11-04

继续等待高手出现

作者: jinxuezhi   发布时间: 2009-11-04

php不懂
但是试试看把你的js脚本移到页面的底部看一下

是不是加载顺序的原因
没有细看你的问题

作者: zx0051   发布时间: 2009-11-04

还有不明白的是你为什么要用ready方法 ,页面一加载就要验证?

作者: zx0051   发布时间: 2009-11-04

朋友  我真是服了  那个是JQ的ajax啊  你post或是get用的是异步刷新啊  当然不会刷新了  在后台做的事情  

而且location.href="test.php";
这个跳转实在执行完了JQ的post后执行的  按你说的用SESSION保存JQUERY $.post传过来的值  这个就很好理解了

也就是说你在执行完了post后才执行的location.href="test.php";

作者: 爱灵儿的笨蛋   发布时间: 2009-11-05

调用了jquery.ajax方法以后不要在提交了..在提交等于重复提交

作者: yuboloveless   发布时间: 2009-11-15

你可以试试在php文件里面处理跳转语句,然后异步刷新把跳转语句写到到前台,这样不就可以自动跳转了吗?

不过我没试过,应该可以行得通的.

作者: caoyifeng521   发布时间: 2009-11-17

相关阅读 更多