谁给解释下这段代码

chenwei175528 2010-05-27 05:16:29

<body>
<form id="form1" runat="server">
<div>
<script type="text/javascript">
var test={
<asp:repeater id='rptTest' runat="server">
<ItemTemplate></ItemTemplate>
<SeparatorTemplate>,</SeparatorTemplate>
</asp:repeater>};
</script>
</div>

</form>
</body>


为什么不出错? 而且还能显示出来?
...全文
48 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq497525725 2010-05-27
  • 打赏
  • 举报
回复


var test={
<asp:repeater id='rptTest' runat="server">
<ItemTemplate></ItemTemplate>
<SeparatorTemplate>,</SeparatorTemplate>
</asp:repeater>};



这里的服务器控件会先执行,执行完了他是一个字符串
比如
var test={a:"1",b:"2"}

然后js 把这个字符串解析成 test这个对象
  • 打赏
  • 举报
回复
 <asp:repeater id='rptTest' runat="server">
<ItemTemplate></ItemTemplate>
<SeparatorTemplate>,</SeparatorTemplate>
</asp:repeater>};

这是服务器控件 repeater先在服务器上运行,生成结果输出到script脚本里。
zjtpiaoxue 2010-05-27
  • 打赏
  • 举报
回复
那test就是一个字符串数组了,
<asp:repeater id='rptTest' runat="server">
<ItemTemplate></ItemTemplate>
<SeparatorTemplate></SeparatorTemplate>
</asp:repeater>是asp.net 里的控件;
没见过这种用法啊
孟子E章 2010-05-27
  • 打赏
  • 举报
回复
只要结果符合js语法才行。看浏览器的源代码是否生成的结果符合js语法规范

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧