0

我对 JavaScript 不熟悉。刚刚将它与 Java 作为一种编程语言区分开来,我决定接受它,并想尝试一些实际的项目。但是我不知道为什么我的代码只是搞砸了,我做错了什么。

理念

在工作中,我有一个系统,只需在浏览器中打开一个 URL,我就可以执行一个脚本来重置一批功能区屏幕。我不知道代码是如何工作的,但确实如此,我很高兴。但我宁愿有一个网页,我可以去那个批次打开每个网页。它可能很乱;在这一点上,我只想完成工作。所以据我了解,我已经设法拼凑了一些代码。

代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Ribbon screen batch Reset</title>
<script>
var txt="Success!";
 function open()
 {
 try
   {
       window.open("test.html");
   document.write("<p>",txt,"</p><br />");
   }
 catch(err)
   {
   document.write("Something went wrong here.");
   document.write("Error description: " + err.message + "\n\n");
   alert("Interrupted due to errors. See webpage for details");
   }
 }
</script>
</head>
<body>
<img src="http://placehold.it/500x150" />
<h1>Ribbon screen batch reset Type 1 </h1>
<p>Version 1.0.3</p>
<button type="button" onclick="open()">Run code</button>

</body>
</html>

我向你保证我看不到问题,我在同一个文件夹中有另一个名为test.html的文档,只是当我单击按钮时index.html按钮消失了,我只剩下一个空白页。非常感谢您的帮助!

4

3 回答 3

1

将您的函数重命名为其他名称,例如openMyPage。使用onclick="open()"将调用document.open

于 2013-06-28T21:37:44.043 回答
1

两个简单的修复:

1)open是保留字;调用你的函数别的东西。

2)您必须命名窗口,然后使用该名称来操作它。

代码:

<html>
    <head>
        <script type="text/javascript">

            var txt="Success!";
             function openit()
             {
             try
               {
                    testwin = window.open("test.html");
                    testwin.document.write("<p>",txt,"</p><br />"); 
               }
             catch(err)
               {
                    document.write("Something went wrong here.");
                    document.write("Error description: " + err.message + "\n\n");
                    alert("Interrupted due to errors. See webpage for details");
               }
             }

        </script>
    </head>
<body>

    <img src="http://placehold.it/500x150" />
    <h1>Ribbon screen batch reset Type 1 </h1>
    <p>Version 1.0.3</p>
    <button type="button" onclick="openit()">Run code</button>

</body>
</html>
于 2013-06-28T21:50:34.193 回答
0

我不知道“功能区屏幕”是什么,但你的代码有很多问题。首先,如果你document.write()<header>结果中使用它是不可见的,这总体上是不好的做法。

第二个问题是这是完全错误document.write("<p>",txt,"</p><br />"); 的,正确的代码是document.write("<p>"+txt+"</p><br />");

第三,您是否可以将整件事写成短短的一行: <button type="button" onclick="window.open("test.html")">Run code</button>

希望这会有所帮助,干杯

于 2013-06-28T21:36:28.240 回答