请问高手,用jquery如果实现表单的ajax方式提交,即提交表单时,页面不会跳转,然后从服务器端获取json数据?

解决方案 »

  1.   

    表单提交就是表单提交,没有表单的ajax方式提交。ajax就是无刷新发送请求的,页面不会跳转,服务器端数据返回后执行ajax的回调函数去做自己想做的事。当然服务器端返回的数据可以是任意格式,不是一定要是json数据,你甚至可以返回一段JS。
      

  2.   

    用ajax post表单数据,大体流程是先遍历表单,获取数据,可以附带着校验数据正确性,然后拼url,data,发送ajax,同时阻止表单的默认提交。
      

  3.   

    大家可能不明白我的需求:比如我现在要做一个通讯工具,我要给好友传送文件,当我点击按钮时,在对话框中显示文件正在传送,传送完成后,服务器返回下载链接在对话框中,说白了和qq的文件传送类似的效果!我要传送文件必须提交表单,struts2的action才能拿到File字段域,但是现在的问题,我一提交表单,页面马上转?
      

  4.   

    加入一个iframe
    form的target指向这个iframe
      

  5.   


    $("#loginForm").ajaxForm({dataType: 'json', success:function(json){
    if(!json.success){
    // 用户名或密码出错
    }else{
    window.location = "/index.htm";
    }
    }});
      

  6.   

    表单提交于ajax不一样,表单提交会刷新页面,
    用ajax做表单提交实际用的是ajax,不是表单提交,原理是遍历表单里面的元素,把各变淡元素的name和value拼接为url字符串,作为参数ajax提交到服务器
    有文件的情况下无法使用该方式,因为文件上传必须使用表单提交的方式
    js可以模拟文件ajax提交效果,但与ajax无关。原理是将刷新放到iframe中,这样主页面不会刷新,然后通过contentWindow获取iframe中的服务器响应,调用回调函数
    建议你找一个ajax上传组件,使用很简单
      

  7.   

    8楼正解! 用jQuery Form Plugin