1

我是一个商业智能的人,在 web-dev 上缓慢而痛苦地重新崛起。自从 Microsoft 首次发布 .NET 以来,还没有真正接触过这些东西。

无论如何 - runat="server":当我使用这些东西时,这个傻瓜将允许我在我的服务器端 C#/VB.NET/Whatever 中处理我用它标记的任何元素。美好的:

<div>  
      <iframe runat="server" id="Iframe2" src ="foo.com"></iframe>  
</div>

我的大部分学习时间都花在了 Microsoft 堆栈之外——我很好奇 runat="server" 是否仍在 ASP.NET/IIS 世界之外使用。

例如,如果我有一些 JavaScript 代码 ala:

<script>
$.post("http://foo.com/somePage", {
    someInfo: "russell",
    otherInfo: "hoohaw"
}, function(response) {
Foo(response);
});
</script>

...我可以将 runas="server" 粘贴到<script>标签中吗?这会导致脚本在服务器端运行吗?(我猜“不”——我只是有一个可以被服务器端代码访问的脚本块?)

runas="server" 是否有 ASP.NET/IIS 世界之外的任何实用程序?我已经熟悉 LAMP,我很好奇 runas="server" 是否可以让我的客户端代码在服务器上运行——有点像 PHP 之类的。

4

3 回答 3

2

Javascript 是一种客户端语言。这意味着它在浏览器中执行。

当浏览器收到包含 javascript 的 HTML 页面时,它会执行它。

所以,不,ASP.NET 无法执行您的 JavaScript 代码。

runat="server"仅在 ASP.NET AFAIK 中使用。

此外,PHP 也不执行 javascript 代码。

我认为您应该查看您的客户端-服务器模型:-)(PHP/ASP.NET 是服务器,浏览器是客户端,而 javascript 仅由浏览器执行)。

PS:当我说“javascript 仅由浏览器执行”时,我当然不是在谈论 node.js 或任何 JS 服务器端技术。

于 2012-06-20T12:43:34.200 回答
0

不,不会的。

runat="server"由 ASP.net 引擎处理

于 2012-06-20T12:44:33.967 回答
0

好吧,runat 属性定义了一个必须受到服务器端威胁的 ASP 控件。微软标签也是如此。

但是您始终可以实现您的 !DOCTYPE 声明 (DTD) 以允许 runat 服务器属性在您的网页中有效。

您可以修改您的 !DOCTYPE 声明(即 DTD)以允许它,以便 [XML] 文档仍然有效:

http://www.w3schools.com/DTD/dtd_attributes.asp

但最后:与浏览器引擎运行的 Javascript 无关。

于 2012-06-20T12:46:40.660 回答