当我尝试从 C# 调用 javascript 中的方法时遇到问题。
//Code C# in pageLoad
string zone="something";
string script = "LoadZone(\"" + zone+ "\");";
ScriptManager.RegisterStartupScript(this, typeof(Page), "Load", script, true);
//Code javaScript
function LoadZone(res)
{
CargarMapa();
AgregarMarkerLoad(res);
}
这段代码对我有用,我在方法“LoadZone”的第一行放置了一个断点,然后一切正常。但是,当我尝试更改代码以调用同一 .js 中的另一个方法时,却不起作用。
//Code C# in pageLoad
string zone ="something";
string script = "watchZone2(\"" + zone+ "\");";
ScriptManager.RegisterStartupScript(this, typeof(Page), "Load", script, true);
//Code javaScript
function watchZone2()
{
var aaa="";
}
方法“watchZone2”位于.js中“LoadZone”下方 我不知道为什么这段代码不起作用(最后一个)。有什么想法吗??
编辑1:
我尝试了你所说的@ematica:
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "scr", "Javascript:LoadZone(" + zone + ");", true);
但直接给了我另一个错误:
"Runtime Error in Microsoft JScript: 'loadzone' is undefined"
我正在研究这个错误。如果您有任何想法,请告诉我!谢谢!
最佳答案
我发现问题是中间调用了 javascript 中的 2 个函数,并且只能通过每次回发调用一个函数来工作。要修复此问题,请在 javascript 中将 2 个方法集成为一个。
关于javascript - 调用 JavaScript 方法失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26389975/