我是 C# 新手,想在 javascript 中获取我的 C# 值我发现这样做var javacriptVariable = "<%=CsVariable%>";应该得到我的 .cs 文件的值 CsVariable aut。但是,当我记录它时,它记录<%=CsVariable%>为字符串如何从 m C# 文件中获取值?
3 回答

慕森王
TA贡献1777条经验 获得超3个赞
我通常采用的方法是将 C# 值分配给一个隐藏的输入字段,您可以在其中从 javascript 获取值数据。在 ASP.NET 中(看起来你正在使用,如果我错了,请纠正我)你可以做类似的事情
<asp:HiddenField runat="server" id="hdnCsVariable" />
然后在页面加载的后端 .cs 文件中
hdnCsVariable.Value = "My C# Value";
最后在 JS 中,因为 ASP.NET(通常)会生成一些可怕的 id,你可以使用“ends with”选择器来获取隐藏的输入,就像这样
console.log(document.querySelector("input[id$='hdnCsVariable']").value); // logs "My C# Value"

浮云间
TA贡献1829条经验 获得超4个赞
在 Asp.net 中,您可以轻松使用
使用变量
受保护的全局::System.Web.UI.WebControls.TextBox MyTextBox;
'<%= MyTextBox.ClientID %>'
使用功能
'<%=UI.ClassName.GetFunctionName%>'

FFIVE
TA贡献1797条经验 获得超6个赞
虽然 Dans 解决方案会起作用,但这是我个人会选择的替代方案。
示例用法:
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "script", string.Format("var myVariable = {0};", 123), true);
以下内容会将您放在第三个参数中的任何内容呈现为页面上的脚本,因此我会将其放在 PostBack 或 onPageLoad 中。
添加回答
举报
0/150
提交
取消