无法调用JavaScript方法

本文关键字:方法 JavaScript 调用 | 更新日期: 2023-09-27 18:26:35

当我试图从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:

我试过你说的@mematica:

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "scr", "Javascript:LoadZone(" + zone + ");", true); 

但直接给了我另一个错误:

"Microsoft JScript中的运行时错误:未定义'loadzone'"

我正在研究这个错误。如果你有任何想法,请告诉我!谢谢

无法调用JavaScript方法

我发现问题是,中间是在javascript中调用2个函数,并且只能通过每次回发调用一个函数来工作。为了修复它,在javascript中将这两个方法集成为一个。

尝试将其加载为JavaScript ClientScriptBlock:

 ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "scr", "Javascript:LoadZone(" + zone + ");", true);