在javascript中使用c#变量
我想知道如何在javascript中使用C#变量?如果我理解您的意图,请在您的ASPX页面中尝试在javascript中使用c#变量,c#,javascript,C#,Javascript,我想知道如何在javascript中使用C#变量?如果我理解您的意图,请在您的ASPX页面中尝试 <script type="text/javascript"> <!-- function showCSharpVar() { alert('<%= myCSharpVariable %>'); } --> </script> 如果您需要完成更复杂的任务,也可以在页面上创建公共属性 另一个选项是使用RegisterClientScriptBl
<script type="text/javascript">
<!--
function showCSharpVar() {
alert('<%= myCSharpVariable %>');
}
-->
</script>
如果您需要完成更复杂的任务,也可以在页面上创建公共属性
另一个选项是使用RegisterClientScriptBlock()或RegisterStartupScript()将脚本直接嵌入到页面中。这些是我用来决定哪一个最适合这种情况的标准
//A.
// Page.RegisterClientScriptBlock() will insert the *block* of script just after <form>.
// Page.RegisterStartupScript() will insert the script at end of <form>.
//B.
// Page.RegisterClientScriptBlock() should usually be used for scripts encapsulated in functions. (hence the word "block")
// Page.RegisterStartupScript() can be used for any script, even if it's not in a function.
//C.
// Page.RegisterClientScriptBlock() should be used for functions that don't need to run on Page load.
// Page.RegisterStartupScript() should be used for scripts that must run on Page Load.
//D.
// Page.RegisterClientScriptBlock() should be used for a script that does not require the form elements to have been created.
// Page.RegisterStartupScript() should be used for scripts that require the form elements to have been created and uses references to them.
//
函数GetValue(){
var myJsVar=“”;
//执行您想要的操作
}
</script>
}
但请记住变量“anyC#variable”的访问说明符应该高于private。
您可以选择“受保护”或“公共”,但不能选择“私人”
ScriptManager.RegisterStartupScript(this.Page,this.GetType(),“temp”,“alert(“+abc+”);”和false)
VB:
ScriptManager.RegisterStartupScript(Me.Page,Me.GetType(),“temp”,“alert(“+abc+”),False)
对于ASP.NET MVC,我需要完成以下工作:
var IP='@HomeController.ServerIP'
其中,
ServerIP
是HomeController类中的一个public static
变量。请确保在cshtml
文件的顶部导入您的类。可能的重复是否也要求页面本身将数据绑定到类实例背后的代码?好的,非常感谢,但还有一个问题这是变量,但如何使用其中的数组…@Kragen。我相信你是对的。这并不理想,但它是我所知道的跨越应用程序边界的最干净的方法。这是针对ASP.NET Core的
if (ScriptManager.GetCurrent(referenceControl.Page).IsInAsyncPostBack)
{
ScriptManager.RegisterClientScriptBlock(referenceControl, referenceControl.GetType(), "uniqueID",
"Your Script Here", true);
}
else
{
ScriptManager.RegisterStartupScript(referenceControl, referenceControl.GetType(), "uniqueID",
"Your Script Here", true);
}
<script type="text/javascript">
function GetValue() {
var myJsVar = "<%= anyC#Variable %>";
}
</script>
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "temp", "<script language='javascript'>alert(" + abc + ");</script>", false)
ScriptManager.RegisterStartupScript(Me.Page, Me.GetType(), "temp", "<script language='javascript'>alert(" + abc + ");</script>", False)