javascript - 前端数据如何在不需要刷新的情况下发送数据给后端?
巴扎黑
巴扎黑 2017-04-10 16:15:16
[JavaScript讨论组]

我尝试 两种方法 在前端 把数据发送给后端服务器。
1 <form><input 'hidden'></form> (会自动刷新)
2 Ajax (我试过 POST 但是依然会自动刷新)

场景模拟:微博里只删除自己一条微博,其它地方不刷新。我自己想到的方法是,把 要删除微博的数据传回数据库(其它地方需要) ,然后设置 这条微博的 display:none 。

我的Ajax 为什么不能 局部刷新?

巴扎黑
巴扎黑

全部回复(8)
高洛峰

你触发的还是表单提交。
如果你用ajax提交,这时候的form已经没有意义了,你直接把form改成p吧。

ajax本身就是为了解决刷新页面的
ajax只是处理请求,当服务器返回数据后,前端用脚本控制dom的显示隐藏来控制。

天蓬老师

ajax 就可以,然后input type=button 不要等于submit 也不要使用<button>标签,如果form没有使用就换成p吧

黄舟

表单异步的话用jq.form 的ajaxsubmit,或者自己弄个iframe做表单,看起来像异步而已。

PHP中文网

onclick+序列化 解决所有烦恼。

天蓬老师

楼主ajax中type写成put了哈哈,如果用的是表单,先将表单序列化后再ajax提交,ajax就是用来解决不刷新的问题的,楼主是不是把form给submit了。

阿神

*首先可以确定的是ajax可以局部刷新。
楼主应该问我用了ajax为什么页面还是会全部刷新?
1,你的ajax方法触发了么?先确定是否ajax了?
2,确实ajax了,但是否可以确定整个页面是否只发生了ajax而没有其他的数据提交?
3,只发生了ajax没有其他的数据提交,那ajax的回调中是否把页面数据进行的不符合自己逻辑的处理。

从你贴出来的代码中仅仅只能看到你的ajax确实是会局部刷新。

迷茫
  1. <form onsubmit="javascript:return false;">

  2. <input type=button onClick="send_card()">

  3. function send_card() {...Process_Card();}

怪我咯

按钮设为input type='button',不要设成submit

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号