尝试使用在脚本中激活 try{} catch{} 的按钮时页面更新

Page updating when trying to use a button that activates try{} catch{} in script

在原始脚本中,当文本栏中没有值并且我单击名为 Radar 2 的按钮时,页面会自动刷新,据我所知,因为它在函数,页面因此而刷新。

为了防止这个错误和这个强制更新,我尝试使用 try{} catch{},所以如果在尝试解析第一个函数时出现错误,打开一个空白的 iframe。

但是当我点击 Radar 2 按钮时页面不断更新。

我想知道我做错了什么,以及满足我需要的正确脚本是什么样的。

原脚本运行方式如下:

<form action="" method="post" id="url-setter2">
<button type="submit" name="submit">Radar 2</button>
<input type="text" name="url2" id="url2" style="width: 282px;" />
<iframe id="the-frame2" width="347" height="282" src=""></iframe>
<script type="text/javascript">
    (function () {
        "use strict";
        var url_setter = document.getElementById('url-setter2'), url = document.getElementById('url2'), the_iframe = document.getElementById('the-frame2');
        url_setter.onsubmit = function (event) {
    let link = document.getElementById("url2").value;
    let value2 = link.split("OB_EV")[1];
    value2 = value2.split("/")[0];
            event.preventDefault();
            the_iframe.src = "https://sports.staticcache.org/scoreboards/scoreboards-football/index.html?eventId=" + value2;
        };
    }());
</script>

我的脚本错误测试:

<script type="text/javascript">
    (function () {
        "use strict";
        var url_setter = document.getElementById('url-setter2'), url = document.getElementById('url2'), the_iframe = document.getElementById('the-frame2');
        url_setter.onsubmit = try {
    function (event) {
    let link = document.getElementById("url2").value;
    let value2 = link.split("OB_EV")[1];
    value2 = value2.split("/")[0];
            event.preventDefault();
            the_iframe.src = "https://sports.staticcache.org/scoreboards/scoreboards-football/index.html?eventId=" + value2;
        }
    }
    catch (e) {
    function (event) {
                  event.preventDefault();
                  the_iframe.src ="";
              }
    };
    }());
</script>

使用 type="submit" 将尝试将表单数据发送到服务器进行处理,这就是页面刷新的原因。

改为尝试使用 <button onclick="myFunction()">Radar 2</button>,其中 myFunction() 是一个包含您的 javascript 代码的函数