客户端脚本助手






1.36/5 (12投票s)
2004 年 6 月 17 日
2分钟阅读

30429

392
该类帮助在 .NET 代码中编写客户端脚本。
引言
本文中介绍的类可以帮助在 .NET 代码中编写客户端脚本。
背景
有时你需要在你的代码中编写 JavaScript。 我当时做的项目涉及在许多页面上的 .NET 代码中编写 JavaScript。 以前,我使用 string
对象来创建脚本,如下所示:
string script = "<script lanugage=\"JavaScript\">";
script+= "alert('Hello world');";
script+= "</script>";
RegisterClientScriptBlock("myscript", script);
因此,我开发的这个类非常简单,但有助于使代码更简洁一点,并且它使用了 StringBuilder
,这在连接字符串时更好。 请注意,我们总是必须开始脚本 (<script lanugage= "Javascript">
) 并结束脚本 (</script>
),在键入代码时我们可能会犯错误。 使用此类,您不必在脚本中键入上述标签。
使用代码
以下是使用我开发的类的示例。
// include the following namespace in your class where you'll use it
using vs.helpers;
ScriptHelper js = new ScriptHelper();
// another constructor ScriptHelper(string language) e.g ScriptHelper("VBScript")
js.Add("alert('Hello world');");
js.Add("alert('This is an example');");
js.End(); // adds the </script> tag to the script
RegisterClientScriptBlock("myscript", js.ToString());
请注意,您不必开始或结束 <script>
标签。 如前所述,ScriptHelper
使用 StringBuilder
来连接字符串,这在性能方面更好。 脚本的默认语言是 JavaScript,但您可以在构造 ScriptHelper
对象时通过调用将一个参数作为 string
的构造函数来更改语言,这使您可以指定脚本的语言。 代码中包含 Visual Studio 2002(1.0 框架)的 DLL。 如果有人想在 1.1 中使用该代码,他们可以在 VS 2003 中重新编译 ScriptHelper
类。 抱歉,我只有 VS 2002 :)。
关注点
今天,在撰写本文时,我想到为什么不在 Add
方法中使用 JavaScript 解释器。 这样,每当您使用 Add
方法添加脚本时,它可以检查您是否添加了有效的 JavaScript。 因此,您不必在浏览器中运行脚本以找出它在语法或语义上是否正确。 它可以检查编译时而不是运行和修复。 如果您有任何改进建议,请告诉我。