【问题标题】:ASP javascript write at the point of executionASP javascript 在执行点写入
【发布时间】:2016-02-26 22:05:38
【问题描述】:

我正在尝试为 asp 开发一个简单的后端小部件。由于我是 ASP 新手,所以我选择 JavaScript 作为 ASP 语言。我认为我没有正确的工具来写入输出。 Response.Write() 将输出直接发送到页面的开头。我在这里缺少什么? 她的是我制作的代码:

<!DOCTYPE html>
<html>
<body>
<h2>Hello world</h2>
<script language=Javascript runat=server>
    Response.Write("Hello JS");
</script>
</body>
</html>

给出以下输出:

Hello JS    <!DOCTYPE html>
    <html>
    <body>
    <h2>Hello world</h2>

    </body>
    </html>

【问题讨论】:

  • 更好地使用,&lt;%=%&gt;,而不是将脚本运行在服务器上。您也尝试使用 asp 或 asp.net 吗?不一样
  • 您是否在页面顶部尝试过类似的操作:?并把你的输出像 ?除此之外,我不会在 ASP 研究上投入太多时间,因为这是非常古老的技术。
  • 我想你会发现this answer 消除了关于runat="server"&lt;% %&gt;(ASP 处理标签)及其执行顺序的任何误解。

标签: html asp-classic jscript response.write


【解决方案1】:

关于 here 的主题有一个很好的答案,但基本上如果你想让它工作,如下更改上面的代码块;

<!DOCTYPE html>
<html>
<body>
<h2>Hello world</h2>
<% Call Response.Write("Hello JS"); %>
</body>
</html>

您也可以将上面的代码行替换为&lt;%= "Hello JS" %&gt; 作为Response.Write() 方法的缩写形式。

【讨论】:

    【解决方案2】:

    如果你想使用javascript,那么它应该是这样的:

    <script language=Javascript>
         alert("Hello JS");
     </script>
    

     <script language=Javascript>
         alert('<%=SomeVarfromASP%>');
     </script>
    

    这些会给你弹出框,里面有你的消息或你的变量值。

    基本上,当您输入“

    <html>
      <head>
       <script type="text/javascript">
          function ChangeGreet()
            {
              var vgreet = document.getElementById("JSGreet");                                                 
              vgreet.innerHTML = 'Hello JS';
    
             }
         </script>
       </head>
       <body onload="ChangeGreet()">
           <div>Hello MS</div>
           <div id="JSGreet">     </div>
       </body>
     </html>
    

    JavaScript 和 VBScript(Classic ASP) 有自己的语法。查看http://www.w3schools.com/js/DEFAULT.asp。它为两种语言的初学者提供了很好的教程。

    【讨论】:

    • @VibhavSinha JavaScript 练习的另一个来源:tizag.com/javascriptT/index.php
    • 他并没有要求在服务器端使用 Javascript 的客户端方法,请注意 runat=server 语法。问题是 OP 对服务器端 &lt;script&gt; 执行顺序的期望。谈论客户端脚本只会进一步混淆问题。
    • 另外alert() 是“客户端”Javascript,在“服务器端”代码中不起作用。
    • @Lankymart:个人原因不是否决答案的良好基础。您确定在否决我所有的答案时,您是出于专业技能而不是出于其他原因,即使是那些已被接受为对 OP 请求的最佳答案的答案?我应该请版主查看您的活动吗?
    • 抱歉,我否决了您的回答?你有一些我不知道的神通?如果我要否决您的答案,那么正如我在之前的评论中所说的那样,有很多理由。您的回答毫无意义,您在代码运行服务器端的上下文中谈论 alert()。如果您想让这种个人继续前进,但 SO 不适合这种类型的互动。
    猜你喜欢
    • 2014-10-18
    • 1970-01-01
    • 2013-02-10
    • 2017-10-03
    • 1970-01-01
    • 2021-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多