如何从背后的c# asp.net应用程序代码写入chrome/ie/ff f12控制台

问题描述 投票:0回答:3

如何从 ASP.NET Web 应用程序中的代码隐藏重现 JavaScript 的 console.log() 功能?

c# asp.net output console.log
3个回答
15
投票

令人惊讶的是,这之前没有给出过,但这对我在 Chrome 控制台的代码隐藏中有效:

Response.Write("<script>console.log('opened window');</script>")

9
投票

您将无法通过隐藏代码直接写入浏览器的控制台。后台代码正在您的服务器上执行,浏览器(或消费者)不知道那里发生了什么。

如果您想从代码隐藏传递消息并将其显示在 console.log 中,则必须将它们呈现到页面中以由 javascript 执行。

例如:

<script>
console.log('@(Model.your_message)');
</script>

或者,您可以按照问题下评论中的建议使用Glimpse


1
投票

基于@Joel的答案(我还没有评论权)......它在Chrome中适用于我,我构建了这个简单的扩展方法,以使其更容易并可用于我的所有代码隐藏页面:

public static void ConsoleLog(this Page page, string msg)
{
    msg = msg.Replace("'", ""); //Prevent js parsing errors. Could also add in an escape character instead if you really want the 's.
    page.Response.Write("<script>console.log('"+msg+"');</script>");
}
© www.soinside.com 2019 - 2024. All rights reserved.