我在vs2005里面的一个页面中编写了如下jQuery代码:
<script src="jQuery/jquery-1.3.1.js" type="text/javascript"></script>
<script type ="text/javascript">
$("#Button1").click(function(){
var textname=$("#username").val();
                         $.ajax(
{
type:"POST",
         url:"checkusername.aspx?username="+textname,
data:null,
success: function(msc){
                                      $("#display").text("用户名已经存在"); 
                                      },
error:function(){
alert("error");
}
                            })
</script>上面jQuery代码中的Button1为一个HTML按钮控件,username为HTML文本框控件,display为DIV层checkusername.aspx页面代码如下:
protected void Page_Load(object sender, EventArgs e)
    {
        string username = Request.QueryString["username"];
        Response.Write("Hello"+username);//打印出欢迎用户信息 如:HelloJim
        Response.End();
     }
这些代码在VS2005里面调试执行时在IE浏览器里面总是执行jQuery ajax中的error部分,而在FireFox里面可以执行,但是结果却不一样,在FireFox里面只输出了Hello,而没有把传过去的用户名输出来。
我想着可能是在页面中接收不到传过来的值而引起的。
请大家帮帮忙该怎么办?

解决方案 »

  1.   

    success: function(msc){
      $("#display").text("用户名已经存在");  
      },
    这段代码发贴时写错了,应该写成:
    success: function(msc){
      $("#display").text(msc);  
      },
    接下来高手该怎么办??
      

  2.   

    checkusername.aspx 是否只输出了你想要的数据? 前端页面应该只留第一行的……
      

  3.   

    估计后台出了点问题:
    1、
    type:"POST",
    url:"checkusername.aspx?username="+textname,
    --------------->
    type:"POST",--------->type:"GET",
    url:"checkusername.aspx?username="+textname+"&t="+new Date().getTime(),2、
    取得url完整值,如
    checkusername.aspx?username=Jim&t=12378244
    拷贝后放到浏览器地址栏直接运行下,看看报什么错
      

  4.   

    没有接收值的类型
    dataType :'text',

    dataType :'json',我看你应该用第一种 text的