web前端开发中button标签点击后导致页面刷新

一、问题

    <button class="but_style" >点击清除</button>

页面上有这样一个非常普通的botton按钮,每次点击这个按钮的时候,不执行事件或执行完button的click事件后,会自动的重新刷新一下当前的页面。

二、原因

button,input type=button按钮在IE和w3c,firefox浏览器区别:
1、当在IE浏览器下面时,button标签按钮,input标签type属性为button的按钮是一样的功能,不会对表单进行任何操作。
2、但是在W3C浏览器,如Firefox/谷歌下就需要注意了,button标签按钮会提交表单,而input标签type属性为button不会对表单进行任何操作  submit会对表单进行提交。

三、解决办法

为button按钮增加一个type=”button”属性。

    <button class="but_style" type="button">点击清除</button>

 

若有不足请多多指教!希望给您带来帮助!

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
首先,需要明确一下什么是 AJAX,以及它与传统的表单提交有什么不同。AJAX(Asynchronous JavaScript and XML)是一种基于JavaScript和XML技术的异步数据交互方式,可以实现在不刷新页面的情况下向服务器发送请求并获取响应数据。与传统的表单提交方式不同,AJAX不需要整个页面重新加载,从而提高用户体验。 接下来,我们来看一下如何使用 AJAX 来实现登录跳转功能。 1. 在 HTML 页面添加一个表单,用于用户输入账号和密码,并添加一个按钮用于提交表单。 ```html <form id="login-form"> <label for="username">用户名:</label> <input type="text" id="username" name="username"><br><br> <label for="password">密码:</label> <input type="password" id="password" name="password"><br><br> <button type="submit">登录</button> </form> ``` 2. 在 JavaScript 使用 AJAX 发送登录请求,并获取服务器返回的数据。 ```javascript var form = document.getElementById("login-form"); form.addEventListener("submit", function(event) { event.preventDefault(); // 阻止表单提交 var xhr = new XMLHttpRequest(); xhr.open("POST", "/login"); // 发送 POST 请求到 /login 接口 xhr.setRequestHeader("Content-Type", "application/json"); // 设置请求头 xhr.onreadystatechange = function() { if (xhr.readyState === 4) { // 请求完成 if (xhr.status === 200) { // 请求成功 var response = JSON.parse(xhr.responseText); if (response.success) { window.location.href = "/home"; // 登录成功,跳转到 /home 页面 } else { alert(response.message); // 登录失败,弹出错误信息 } } else { alert("请求失败:" + xhr.statusText); // 请求失败,弹出错误信息 } } }; var data = { // 构造请求参数 username: form.username.value, password: form.password.value }; xhr.send(JSON.stringify(data)); // 发送请求 }); ``` 在上面的代码,我们使用 XMLHttpRequest 对象发送了一个 POST 请求到 /login 接口,同时设置了请求头为 application/json。在请求完成后,我们判断了请求返回的状态码和响应数据,并根据返回的数据来判断登录是否成功。如果成功,则使用 window.location.href 跳转到 /home 页面,否则弹出错误信息。 需要注意的是,为了防止表单默认的提交行为,我们在表单的 submit 事件上使用了 event.preventDefault() 方法来阻止表单的默认提交行为。 以上就是一个简单的使用 AJAX 实现登录跳转功能的示例。需要注意的是,这只是一个初级问题,实际开发还需要考虑很多其他因素,比如安全性、用户体验等。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值