下面是我写的代码,不知道为什么,serialize方法每次返回的都是空串,serializeArray方法也一样,请大家帮我看看,
而且我想用Ajax访问后台的servlet请问url要怎么写?要用绝对路径吗?
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript"> $(document).ready(function(){
$("#button").click(function(){
//alert("alert");
var url='json/test.action';
var params=$("form1").serialize();
//var params=$("form1").serializeArray();
//alert(params);
//$("#show").append(params);
var params="";
$("input[type*='text']").each(function(){
//alert(this.value);
params+=this.name+"="+this.value+"&"
});

$.ajax({
   type: "POST",
   url: "server.jsp",
  //url:"../json/test",
   data: params,
   //dataType:'json',
   dataType:'json',
   success: function(msg){
    alert(msg);
   },
    error:function(){
    alert("error");
    },
    complete:function(xhr,textStatus){
    //alert(xhr.responseText);
    //var p;
    //eval('p='+xhr.responseText.trim());
    //alert(p.name);
    $("#show").append(xhr.responseText);
    alert("status:"+textStatus);
}
}); 
})
});
</script>
  </head>
  
  <body>
   <form id="form1" name="form1">
   field1:<input id="field1" name="field1" type="text"  /></br>
   tranField:<input type="text" name="tranField" id="tranField"/>
   wuGet:<input  type="text" name="wuGet" id="wuGet"/>
   <input  type="button"  id="button" value="submit" />
   </form>
   <div id="show">1</div>
  </body>
</html>

解决方案 »

  1.   

    参考:
    http://hi.baidu.com/lbhlamp/blog/item/fd8ab633ab59f112ebc4af00.html你也看看后台返回的数据是不是就是空
      

  2.   

    我在html页面调用var params=$("form1").serialize();,不论我form1中是否填入了数据,params都是空串
      

  3.   

    $("form1") --->$("#form1") 你大意了
      

  4.   

    $("form")或者$("#form1")前者根据Element取到所有的form对象后者根据ID取到form对象
      

  5.   

    var params=$("#form1").serialize();
    #form1是id