JavaScript 访问 c#变量的方法

问:
Hi,

I have this C#/ASP.NET/.aspx page with a string variable named myString with the value "Mario Gamito".

How can I access "Mario Gamito" from within a JavaScript function, i. e., the variable's value ?

Already tried '" + mystring + "' but it doesn't works.

Any help would be appreciated.

答1:

复制代码
<!-- Default2.aspx -->
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    
<title>Untitled Page</title>
    
<script type="text/javascript">
        
function show()
        
{
            
var value=document.getElementById("Hidden1").value;
            window.alert(value);
        }

    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<input id="Hidden1" type="hidden" runat="server"/>
        
<input id="Button1" type="button" value="button" onclick="show();"/>
    
</div>
    
</form>
</body>
</html>
复制代码

复制代码
using System;
using System.Collections;
//Default2.aspx.cs
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Default2 : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
string mySting = "Mario Gamito";
        
this.Hidden1.Value = mySting;
    }

}

复制代码


答2:

you can also try pushing the variable to javascript using the registerClientScriptBlock

复制代码
string jsVariable = string.Empty;
string mySting = "Mario Gamito";

jsVariable 
= "var myjsString = " + myString;


this.Page.ClientScript.RegisterClientScriptBlock(
                    
this.GetType(), "YourStringVar", jsVariable, true);
复制代码
posted @   LanceZhang  阅读(1119)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示