我有一个带有输入字段的页面,我想将用户发送到他们在输入中输入的 URL,并在末尾附加 -.html。我的 HTML 如下:
<form name="codeform">
<input type="text" id="code" name="code" autofocus>
</form>
<a href="#" class="button" id="submit">SUBMIT</a>
还有我的 JavaScript:
$('#submit').click(function () { location.href = window.document.codeform.code.value + '.html'; });
当用户单击该按钮时,脚本将按预期工作并且用户将转到该页面。但我还希望按下返回键时执行脚本。现在,当按下返回键时,它会尝试提交表单,最终得到一个查询字符串。
无论按下按钮还是返回键,将用户转到页面的最佳方式是什么?
最佳答案
由于您的 a.button
位于表单之外,因此您还需要向表单和 a.button
添加触发器。然后只需检测 Enter keycode ,完成。
$('form').submit(function(e) {
e.preventDefault();
console.log(window.document.codeform.code.value + '.html')
});
$('form').keydown(function(e) {
if (e.which == 13) {
console.log(window.document.codeform.code.value + '.html')
}
});
$('#submit.button').click(function() {
console.log(window.document.codeform.code.value + '.html')
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<form name="codeform" id="codeform">
<input type="text" id="code" name="code" autofocus>
</form>
<a href="#" class="button" id="submit">SUBMIT</a>
关于javascript 从按下按钮或返回键的输入转到 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41842809/