链接,从形式HTML/JS[重复]

0

的问题

目前,我正在尝试做一个程序,在其中输入一个链接到一个HTML形式和当你按一下按钮,它将发送你到那个链接。 然而,当我按一下按钮页只要清除的形式。 我Python司机和一个新手来HTML/JS所以我现在的结构安排我的代码可能是为什么:

<form>
    <input type="url" id="link" placeholder="Enter link of website:" required>
    <br>
    <button class="outline" id="open">Create gate</button>
    </form>
    <script type="text/javascript">
        document.getElementById("open").onclick = () => 
        location.assign(String(document.getElementById("link").value));
    </script> </form>
html javascript
2021-11-24 05:36:02
2

最好的答案

1

因为,你使用一种形式。 你的按钮

<button class="outline" id="open">Create gate</button>

作为的形式提交按钮,因此它刷新的网页之前执行 location.assign() 法。 有许多方法来解决这个问题。

  1. 一个简单的方式是专门告诉浏览器,这个按钮是不提交按钮,我们可以做的是,通过使用 type="button" 属性在我们的按钮。

    创建门

  2. 你可以使用 e.preventDefault() 关于您的形式提交停止刷新的网页。

试试下面的代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Location Object</title>
</head>
<body>
    <form>
        <input type="url" id="link" placeholder="Enter link of website:" required>
        <br>
        <button class="outline" id="open">Create gate</button>
    </form>
    <script type="text/javascript">
        document.getElementById("open").addEventListener('click', (e) => {
             e.preventDefault();
            location.assign(String(document.getElementById("link").value));
        });
       
    </script>
    </form>
</body>
</html>

2021-11-24 05:52:15
0

你的代码,正是因为提供的,贴到一个最小的HTML5样板模板,在Textastic码编辑和在野运行on localhost.

也许一些其他JavaScript在附近的事件监听器是破箭头的功能。 也许包围中的一个函数发言可以帮忙吗?

2021-11-24 05:48:39

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................