Proponuje dynamiczne tworzenie adresu href dla <a>
przykład
<style>
input.aaa {
border: 2px solid darkred;
}
input.bbb {
border: 2px solid green;
}
pre {
font: 300 1.2em/1 monospace;
}
.aaa, .bbb {
font-weight: bold;
}
.aaa {
color: darkred;
}
.bbb {
color: green;
}
</style>
<div class="container">
<label for="aaa">aaa:</label>
<input type="text" id="aaa" class="aaa" value="">
<label for="bbb">bbb:</label>
<input type="text" id="bbb" class="bbb" value="">
<pre> </pre>
<a href="#" id="run_url">Przejdź</a>
</div>
<script>
window.onload = load;
function load() {
const aaa_input = document.querySelector('#aaa'),
bbb_input = document.querySelector('#bbb'),
run_url_a_tag = document.querySelector('#run_url');
const url_patter = 'https://index.php?value=UKRYTE1{{a}}UKRYTE2{{b}}UKRYTE3';
let url = '';
aaa_input.oninput = prepareLink;
bbb_input.oninput = prepareLink;
function prepareLink() {
url = url_patter.replace('{{a}}', aaa_input.value.trim());
url = url.replace('{{b}}', bbb_input.value.trim());
document.querySelector('pre').textContent = url;
run_url_a_tag.href = url;
}
}
</script>
jak zajdzie potrzeba dodania znaków np. ; , / ? : @ & = + $ - _ . ! ~ * ' ( ) #
można użyć dodatkowo encodeURI()
run_url_a_tag.href = encodeURI(url);