php - 为什么发送ajax请求页面也会刷新呢?

 mobiledu2502870193 发布于 2022-11-13 11:29

点击按钮触发函数

set_chat_msg()部分:

var url= "chat_send_ajax.php";
url += "?name=" + strname + "&msg=" + strmsg;//将用户名和消息变量拼接进url中
oxmlHttpSend.open("GET",url,true);//打开请求
oxmlHttpSend.send(null);//发送
//alert(oxmlHttpSend);//为什么在firefox下不注释这里php就无法接收到数据执行呢?chrome是正常的

然后就是php接收到进行处理。

为什么我点击按钮后页面会被刷新一次呢?然后如果是在firefox下php根本接收不到数据也不执行了,chrome就可以。

5 个回答
  • 可以在function下加上event.preventDefault();

    2022-11-13 11:58 回答
  • button不加type='button',谷歌和ff都会当成是submit,低版本的ie不会有这个情况

    2022-11-13 11:58 回答
  • 说多了都是泪啊,button改成input也可以呢

    2022-11-13 11:58 回答
  • button 标签请添加 type='button' 属性,因为浏览器默认会认为 button 的属性是submit.type=‘submit’时会发生提交表单的默认行为。

    <button type='button' class="btn btn-default" onclick="set_chat_msg()">send</button>

    W3shool:

    请始终为按钮规定 type 属性。Internet Explorer 的默认类型是 "button",而其他浏览器中(包括 W3C 规范)的默认值是 "submit"。

    2022-11-13 11:58 回答
  • 只要在<form>标签内,一定要明确指定<button>的类型,记得给<button>加上type="button"type="submit",说多了都是泪~

    2022-11-13 11:58 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有