Home Web Front-end JS Tutorial JavaScript prevents the browser back event from clearing the form by mistake_javascript skills

JavaScript prevents the browser back event from clearing the form by mistake_javascript skills

May 16, 2016 pm 05:12 PM
javascript Browser

Because most of the customers are newbies who don't understand computers. Therefore, there are many misoperations. Sometimes the text box is not selected, and then after accidentally pressing backspace, the form that has just been filled out with so much hard work will go back to nothing. I checked a lot of information online and then put it together. Share it with everyone. I also hope Sister Yogurt will come and read my first technical blog. Haha (don’t mind me mentioning you.). No more nonsense. Up source code.

Copy code The code is as follows:

$(function(){
//Processing Keyboard events prohibit the back key (Backspace) password or single-line or multi-line text boxes.
function banBackSpace(e){
var ev = e || window.event;//Get the event object
var obj = ev.target || ev.srcElement;//Get the event source

var t = obj.type || obj.getAttribute('type');//Get the event source type

/ /Get the event type used as the judgment condition
var vReadOnly = obj.getAttribute('readonly');
var vEnabled = obj.getAttribute('enabled');
//Handle the null value situation
vReadOnly = (vReadOnly == null) ? false : true;
vEnabled = (vEnabled == null) ? true : vEnabled;

//When the Backspace key is pressed, the event source type is password or single line , multi-line text,
//If the readonly attribute is true or the enabled attribute is false, the backspace key is invalid
var flag1=(ev.keyCode == 8 && (t=="password" | | t=="text" || t=="textarea")
&& (vReadOnly || vEnabled!=true))?true:false;

//When the Backspace key is pressed, the event If the source type is not password or single or multi-line text, the backspace key will be disabled
var flag2=(ev.keyCode == 8 && t != "password" && t != "text" && t != "textarea ")
?true:false;

//Judge
if(flag2){
return false;
}
if(flag1){
return false ;
}
}

//Disable the back key for Firefox and Opera
document.onkeypress=banBackSpace;
//Disable the back key for IE and Chrome
document.onkeydown=banBackSpace;
window.history.forward(1);//Block the back button that comes with the browser
})

Things to note are :

This code must be placed in the initialization method. Then use document.onkeypress=banBackSpace to call the method you wrote.
Copy code The code is as follows:

vReadOnly = (vReadOnly == null) ? false : true ;For this code, it turns out that the value after the colon is vReadOnly. Later I found that in my project it returned empty, not null, so I changed it to true.

Follow the above method to prevent the browser backspace event by pressing backspace when it is not text, password, or textare, but it will not prevent backspace when the text box has a value. event. This is my first blog, I hope you will support it.
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to achieve gap effect on the card and coupon layout with gradient background? How to achieve gap effect on the card and coupon layout with gradient background? Apr 05, 2025 am 07:48 AM

Realize the gap effect of card coupon layout. When designing card coupon layout, you often encounter the need to add gaps on card coupons, especially when the background is gradient...

How to correctly display the locally installed 'Jingnan Mai Round Body' on the web page? How to correctly display the locally installed 'Jingnan Mai Round Body' on the web page? Apr 05, 2025 pm 10:33 PM

Using locally installed font files in web pages Recently, I downloaded a free font from the internet and successfully installed it into my system. Now...

Why does negative margins not take effect in some cases? How to solve this problem? Why does negative margins not take effect in some cases? How to solve this problem? Apr 05, 2025 pm 10:18 PM

Why do negative margins not take effect in some cases? During programming, negative margins in CSS (negative...

How to customize the resize symbol through CSS and make it uniform with the background color? How to customize the resize symbol through CSS and make it uniform with the background color? Apr 05, 2025 pm 02:30 PM

The method of customizing resize symbols in CSS is unified with background colors. In daily development, we often encounter situations where we need to customize user interface details, such as adjusting...

How to use CSS and Flexbox to implement responsive layout of images and text at different screen sizes? How to use CSS and Flexbox to implement responsive layout of images and text at different screen sizes? Apr 05, 2025 pm 06:06 PM

Implementing responsive layouts using CSS When we want to implement layout changes under different screen sizes in web design, CSS...

How to obtain real-time application and viewer data on the 58.com work page? How to obtain real-time application and viewer data on the 58.com work page? Apr 05, 2025 am 08:06 AM

How to obtain dynamic data of 58.com work page while crawling? When crawling a work page of 58.com using crawler tools, you may encounter this...

What is the reason for encoding exceptions when using the request library to get HTML text in Node.js? How to solve it? What is the reason for encoding exceptions when using the request library to get HTML text in Node.js? How to solve it? Apr 05, 2025 am 07:03 AM

The reason and solution for coding exceptions when using the request library to obtain HTML text content in the Node.js environment. During the development process of using Node.js, it is often necessary to...

See all articles