Created
November 10, 2021 14:44
-
-
Save marcorivm/09270a5c16122ded1a42b2102546b0f6 to your computer and use it in GitHub Desktop.
Copy query parameters into a form
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Parse an url and get query parameters | |
| const getParams = function (url) { | |
| const params = {} | |
| const parser = document.createElement('a') | |
| parser.href = url | |
| const query = parser.search.substring(1) | |
| const vars = query.split('&') | |
| for (let i = 0; i < vars.length; i++) { | |
| let pair = vars[i].split('=') | |
| params[pair[0]] = decodeURIComponent(pair[1]) | |
| } | |
| return params | |
| } | |
| //Receives a key, value pair and adds it to form as a hidden input | |
| const addHiddenField = function (key, value, form) { | |
| const element = document.createElement('input') | |
| element.setAttribute('type', 'hidden') | |
| element.setAttribute('name', key) | |
| element.setAttribute('value', value) | |
| form.appendChild(element) | |
| return element | |
| } | |
| const queryString = getParams(window.location.href) | |
| const form = document.getElementById('myForm') | |
| for (const key in queryString) { | |
| if (queryString.hasOwnProperty(key) && queryString[key]) { | |
| addHiddenField(key, queryString[key], form) | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment