将变量从代码隐藏传递给 JavaScript 函数

本文关键字:JavaScript 函数 隐藏 变量 代码 | 更新日期: 2023-09-27 18:31:51

我想从代码隐藏中将字符串值传递给javascript函数。因为这是我收到一个未捕获的引用错误的那一刻,解释说该值未定义。

var variable= txtVariable.Value;
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Registering", "RegisterTheUser("+variable+");", true);

关于正确语法的建议

这是函数

function RegisterTheUser(val) {
    alert(val);
}

问候

将变量从代码隐藏传递给 JavaScript 函数

您发布的内容看起来不错。我已经使用了以下内容,没有任何问题:

ScriptManager.RegisterStartupScript(this, typeof(string), "Registering", String.Format("RegisterTheUser('{0}');", myVariable), true);

您可以尝试使用我发布的示例吗?

问题可能是您的RegisterStartupScript在加载函数RegisterTheUser之前正在执行。

你需要整理脚本的加载顺序,或者添加一些逻辑,只有在document准备好后才能调用这个函数。

在jQuery中是这样完成的:

ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "Registering", "$(document).ready(function(){ RegisterTheUser("+variable+"); });", true);

正如 sbhomra 在他的回答中指出的那样,如果值是一个字符串,则可能需要添加单个 qoutes。如果是数字,则不需要。