将访问代码输入作为utm标记追加到URL中



我目前正在构建一个带有访问代码表单字段的登录页。我一直在寻找一种方法,将输入到表单中的访问代码作为标签附加到url上。

输入";12345";进入字段并直接提交到url";www.website.com/?代码=12345";

以下是我迄今为止的代码-:

<script>
function btntest_onclick(){
if (document.getElementById('input-code').value == '1234','5678','9809') {
var domain = "http://www.website.com?";
var data = $(this).serialize();
window.location.href = url
} 
else {
alert ( 'not found' );
}
};
</script>
<center>
<span class="text-container">
<input type="text" name="accesscode" placeholder="ACCESS CODE" maxlength="10" size="25" id="input-code">
<p><a href="#" class="btn" onclick="return btntest_onclick()">ENTER</a></p>
</span>
</center>

如有任何建议,我们将不胜感激!

谢谢。

您在代码中遇到了一些问题:

  • 包含document.getElementById('input-code').value == '1234','5678','9809'if。这不是JS中有效的条件语句。我假设您试图测试该值是否等于任何字符串,这可以使用||(逻辑"或"(来完成。

  • 该代码从未添加到URL的末尾。

  • 您从未定义要重定向到的url变量。

下面是一个有评论的版本,应该解释一些方法:

function btntest_onclick() {
// First, we assign the value to a variable, just to keep the code tidy
var value = document.getElementById('input-code').value
// Now we compare that variable against each valid option
// if any of these are true, we will progress
if (value === '1234' || value === '5678' || value === '9809') {
// Use a template literal (The ` quotes) to build the new URL
var url = `http://www.website.com?code=${value}`
// This could also be written as:
// var url = "http://www.website.com?code=" + value
// Navigate to your new URL (Replaced with an alert as a demonstration):
alert(url)
// window.location.href = url
} else {
// Otherwise, show the alert
alert('not found')
}
}
<center>
<span class="text-container">
<input type="text" name="accesscode" placeholder="ACCESS CODE" maxlength="10" size="25" id="input-code">
<p><a href="#" class="btn" onclick="return btntest_onclick()">ENTER</a></p>
</span>
</center>

最新更新