从ASP发送参数.NET转换为javascript

sending parameters from ASP.NET to javascript

本文关键字:转换 javascript NET 参数 ASP      更新时间:2023-09-26

我想从我的ASP调用一个javascript函数。NET (c#)代码,我想传递一个变量(字符串)与另一个字符串,如下所示:

tag_label.Attributes.Add("onmouseover", "tooltip.show('my text'+'"+myString+"'<br/>'another text);");

我应该如何传递这些值?我也想有新的行在我的工具提示(<br/>),我该怎么做?我尝试了几种方法(使用', +和其他方法)发送所有这些值,但我得到javascript错误,有任何样本吗?请帮帮我由于

在该函数中,您可以使用服务器端代码标记。

var string = "<% = myString%>"

您非常接近,请记住,当控件在服务器上生成时,它们被'展开'到客户端的HTML中—换句话说,'+'符号是不必要的,因为客户端只会看到字符串(它没有概念,属性值的哪一部分是在代码中生成的,哪一部分是硬编码在服务器上)。

var toolTip = string.Format("This is text was added on {0}:{1}<br />this text is hard-coded", DateTime.Now.ToShortDateString(), DateTime.Now.ToLongTimeString()
var attributeValue = string.Format("tooltip.show('{0}')");
tag.Attributes.Add("onmouseover",  attributeValue);

试试这个:

tag_label.Attributes.Add("onmouseover", "tooltip.show('my text','"+myString+"<br/>another text');");

两种方式:

方法1 (Jon Martin的方式):用服务器信息填充一个javascript变量

  • 在aspx页面上创建一个javascript变量:var myString = '<%= _mystring %>';
  • 在后面的代码中填充_mystring: public String _mystring = "your value";

方法2:直接从服务器端转储变量

Page.ClientScript.RegisterStartupScript(getType(Page), "var myString = '" + "your value" + "';", true);