繁体   English   中英

无法调用JavaScript方法

[英]Fail to invoke JavaScript Method

我尝试从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); 

但直接给我另一个错误:

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

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

我发现问题是在中间正在用javascript调用2个函数,并且只能通过每个回发调用一个函数来工作。 要解决它,将2种方法集成在javascript中。

尝试将其作为JavaScript ClientScriptBlock加载:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM