我是ASP.NET的新手.PHP经验(meaby导致此问题)和Iam在将数据从codebehind传递到view-source时遇到小问题.
我在代码隐藏方面声明了字符串变量,例如:
...
public string mystring = "Scotty";
protected void Page_Load(object sender, EventArgs e)
{
...
Run Code Online (Sandbox Code Playgroud)
所以现在我想在视图代码中使用它,但当我把它放在尖括号(<%:或<%=)并将它放在head元素中时,我无法访问此值.另一方面,当我把它放在BODY元素时,一切都很好.我失败的例子(简化):
<head runat="server">
<script language="javascript">
function beamMeUp()
{
alert(<%=mystring;%>);
}
</script>
</head>
<body>
<input type="button" onclick="javascript:beamMeUp" value="Warp6" />
</body>
Run Code Online (Sandbox Code Playgroud)
任何人都可以向我解释为什么我不能在HEAD中使用它(<%= mystring;%>)但我可以在BODY中使用它吗?最好的祝福
使用时不需要分号<%=.把它想象成写作:
<% Response.Write(mystring); %>
Run Code Online (Sandbox Code Playgroud)
您也希望将其包装在引号中.
alert("<%=mystring %>");
Run Code Online (Sandbox Code Playgroud)
没有引号将是: alert(Scotty);
除非你有一个调用的javascript变量,否则没有多大意义Scotty.它应该给你一个警告框显示undefined
代码隐藏变量mystring可在<head>.C#IntelliSense没有显示它,因为它在<script>标签内.
| 归档时间: |
|
| 查看次数: |
369 次 |
| 最近记录: |