Asp.net 如何编写动态javascript

Asp.net 如何编写动态javascript,asp.net,javascript,Asp.net,Javascript,如何编写动态javascript—任何简单的示例或任何引用。 谢谢你 <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div>

如何编写动态javascript—任何简单的示例或任何引用。 谢谢你

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <script type="text/javascript" src="swfobject.js"></script>

<div id="flashPlayer">

</div>

<script type="text/javascript">




   var so = new SWFObject("playerSingle.swf", "mymovie", "192", "67", "7", "#FFFFFF");
   so.addVariable("autoPlay", "yes");
   so.addVariable("soundPath","song.mp3");
   so.addVariable("overColor","#000044")
   so.addVariable("playerSkin","1") 
   so.write("flashPlayer");


</script>
    </div>

    </form>
</body>
</html>

无标题页
var so=新的SWFObject(“playerSingle.swf”、“mymovie”、“192”、“67”、“7”、“#FFFFFF”);
so.addVariable(“自动播放”,“是”);
so.addVariable(“soundPath”、“song.mp3”);
so.addVariable(“过色”,“#000044”)
so.addVariable(“playerSkin”,“1”)
所以,写(“flashPlayer”);

我将把您的问题解释为动态生成Javascript,然后执行它。如果您使用的是Java6,那么您可以这样做

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine js = mgr.getEngineByExtension("js");
try {
   js.eval("print('Hello, world!')");
} catch (Exception e) { }

如果您需要生成非常复杂的JavaScript代码,我建议您使用类似于

的模板库。这是一个非常广泛的问题

如果您的意思是如何使用javascript设置swf对象的音频文件参数,那么如果我们使用您已有的代码并假设您的URL类似,那么有一个库可以提供帮助。使用它会产生类似的结果:

<script type="text/javascript">

   //assign variable to querystring
   var qs = new Querystring()

   //retrieve the parameter you want
   var requestedFile = qs.get("audio", "defaultsong.mp3")

   var so = new SWFObject("playerSingle.swf", "mymovie", "192", "67", "7", "#FFFFFF");
   so.addVariable("autoPlay", "yes");
   so.addVariable("soundPath",requestedFile);
   so.addVariable("overColor","#000044")
   so.addVariable("playerSkin","1") 
   so.write("flashPlayer");


</script>

//将变量赋值给querystring
var qs=新查询字符串()
//检索所需的参数
var requestedFile=qs.get(“音频”、“defaultsong.mp3”)
var so=新的SWFObject(“playerSingle.swf”、“mymovie”、“192”、“67”、“7”、“#FFFFFF”);
so.addVariable(“自动播放”,“是”);
so.addVariable(“声音路径”,requestedFile);
so.addVariable(“过色”,“#000044”)
so.addVariable(“playerSkin”,“1”)
所以,写(“flashPlayer”);

假设您有以下URL:

重定向到此页面后,您希望播放mysong.mp3

在javascript中,您可以使用
window.location.href
属性读取url。您需要自己解析它才能提取歌曲


这可以帮助您进行解析。

如果您希望使用ASP.NET而不是javascript解析查询字符串,应该可以使用以下类似的方法:

<script type="text/javascript">

   var so = new SWFObject("playerSingle.swf", "mymovie", "192", "67", "7", "#FFFFFF");
   so.addVariable("autoPlay", "yes");
   so.addVariable("soundPath", '<%= Request.QueryString["song"] %>');
   so.addVariable("overColor","#000044")
   so.addVariable("playerSkin","1") 
   so.write("flashPlayer");

</script>

var so=新的SWFObject(“playerSingle.swf”、“mymovie”、“192”、“67”、“7”、“#FFFFFF”);
so.addVariable(“自动播放”,“是”);
so.addVariable(“声音路径”),“”;
so.addVariable(“过色”,“#000044”)
so.addVariable(“playerSkin”,“1”)
所以,写(“flashPlayer”);

然而,如果你这样做,你会有一个安全漏洞——一个定制的URL可能会在你的页面上执行的javascript中嵌入任何东西,包括恶意代码。在将查询字符串的值插入客户端javascript之前,您应该使用该库对查询字符串中的值进行javascript编码。

动态javascript是什么意思?是否要执行动态JS语句?实际上,我在应用程序中放置了一个音频播放器。当我将音频文件直接放入其中时,效果很好,但是我的应用程序我必须动态地播放它,因为aduio文件将来自querystring。当我向玩家的技术团队寻求支持时,他们告诉我如果你想写动态javascript,我会把代码放在Meta上提到的不是你吗,谁从事商业工作并试图滥用stackoverflow社区来为你做这项工作?不,我没有问任何元问题,我一点也没有滥用stackoverflow,我尊重所有stackoverflow成员谢谢你的回复Chuk Lee先生,我刚刚发表了评论,你能检查一下评论吗?请确认你上面的问题不是很清楚任何一个我将把它解释为您希望在网页内动态生成JS,然后将该网页返回给您的用户。如果您使用Java,一种简单的方法是创建一个到/myapp/dymamicpage的servlet映射。然后,您要做的是使用StringTemplate生成JS代码,将内容类型设置为“text/html”,并将其返回给您的用户。因此,如果您有这样的/myapp/dymamicpage?movefile=movie.avi,那么请使用HttpServletRequest.getParameter(“moviefile”)来检索我使用的是.net而不是java的参数Chuk Lee先生