我有一个ASP网页,我试图在...中编写一些javascript。
我想为函数的响应设置一个变量 - 它存储在我的代码后面(page.aspx.vb)。
这是我想要做的一个例子:
<script type='text/javascript'>
var test ='<%GetTestName()%>'
</script>
我运行此页面 - 它会调用方法GetTestName()...但不会将变量'test'设置为响应。在动态视图中,我可以看到这一行JavaScript现在说:
<script type='text/javascript'>
var test =''
</script>
此方法在此ASP listview控件中多次使用 - 并且工作正常。例如:
<ItemTemplate>
<div class="rlvI" style="height:100px; width:100px; margin-top:0px; margin-left:5px; margin-right:5px; margin-bottom:25px; background-color:<%# GetRowColor(Container.DataItem)%>; color:white">
<asp:Button ID="SelectButton" runat="server" CausesValidation="False" CommandName="Select" CssClass="rlvBEdit" Text=" " ToolTip="Select" />
<asp:Label ID="measure" runat="server" Text='<%# Eval("measure")%>' />
<br />
<asp:Label ID="actualLabel" runat="server" Text='<%# String.Concat("A: ", Eval("actual"))%>' />
<br />
<asp:Label ID="budgetLabel" runat="server" Text='<%# String.Concat("B: ", Eval("budget"))%>' />
<br />
</div>
</ItemTemplate>
这在javascript中不可能吗?如果没有,你能建议一个更好的方法吗?
提前致谢。
答案 0 :(得分:1)
应该是:
<script type='text/javascript'>
var test ='<%=GetTestName()%>'
</script>
注意'='符号。
答案 1 :(得分:1)
如果您在函数签名中添加<System.Web.Services.WebMethod()>
,则可以使用PageMethods从javascript调用该方法。
<System.Web.Services.WebMethod()>_
Public Shared Function MethodName()
'dostuff
End Function
您还必须在页面中添加Scriptmanager。
<script language="javascript" type="text/javascript">
function functionName()
{
PageMethods.MethodName();
}