If a form field in a form is set to disabled, the value of the form field will not be submitted. But sometimes you do need to submit this value. There are many solutions, such as using readonly instead of disabled, but I think none of them are very good (the specific reasons are omitted). I thought of a solution, which is to copy the form to be submitted before submitting it, then set the disabled attribute of all form fields in the copied form to false, and then submit the copied form. The following is the demonstration code (save the code to a file named submit.html to observe the demonstration effect). Copy code The code is as follows:<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=shift-jis"> <title> Submit form </title> <script> function doSubmit(form) { var newForm = form.cloneNode(true); enableFields(newForm.getElementsByTagName("input")); enableFields(newForm.getElementsByTagName("textarea")); enableFields(newForm.getElementsByTagName("select")); newForm.style.display = "none"; document.body.appendChild(newForm); newForm.submit(); } function enableFields(fields) { for(var i=0;i<fields.length;i++) { var field = fields[i]; if (field instanceof(Array)) { for (var j=0;j<field.length;j++) { field[j].disabled = false; } } else { field.disabled = false; } } } </script> </head> <body> <form action="submit.html"> <input type="text" name="text" value="tt" disabled/> <input type="radio" name="radio" value="r1" checked disabled>r1 <input type="radio" name="radio" value="r2">r2 <input type="checkbox" name="checkbox" value="c1">c1 <input type="checkbox" name="checkbox" value="c2" checked disabled>c2 <select name="select" disabled> <option value="1">1</option> <option value="2">2</option> </select> <textarea name="textarea" disabled>123</textarea> <input type="button" value="submit" onclick="doSubmit(this.form)"> </form> </body> |
<<: CSS3 realizes the graphic falling animation effect
>>: Detailed explanation of ES6 Promise usage
The transaction log records the operations on the...
Today I will share with you a source code contain...
Table of contents Preface 1. Image Optimization 2...
Scrcpy Installation snap install scrcpy adb servi...
Table of contents 1. Insert the queried results 2...
download: Step 1: Open the website (enter the off...
This article shares the specific code of JavaScri...
Preface This article lists several common, practi...
Idea imports an existing web project and publishe...
There are many tools available for backing up MyS...
Table of contents sequence 1. Centralized routing...
Table of contents Linux MySQL 5.5 upgraded to MyS...
Table of contents Avoid using the spread operator...
This article example shares the specific code of ...
We all know that the commonly used positioning me...