可能重复:
Calling ASP.NET Code Behind function from Javascript
using javascript function to be called from code behind under specific condition
这是一个javascript函数。
function openWinContentTemplate() {
$find("RadWindow_ContentTemplate").show();
}
我想在条件下点击按钮后面的代码调用此javascript函数:
protected void button_click()
{
if(true)
//call javascript function here
}
答案 0 :(得分:2)
你无法调用代码隐藏。 Codebehind位于服务器上,您的脚本在客户端上运行。使用代码隐藏中的RegisterStartupScript在浏览器获得响应时调用脚本。
答案 1 :(得分:1)
您可以将Js函数称为在代码隐藏本身上注册的脚本
Page.RegisterStartupScript("key","value")
键是您要为脚本提供的名称
示例
"PageClose"
值是
stringBuilder str = new StringBuilder()
str.Append("<script = language='javascript'>");
str.Append("window.close();");
str.Append("</script>")
在这里,而不是使用window.close
你可以附加你的js function as a string
,理想情况下我把这个字符串构建器类放在构造函数中,如果我总是在页面中需要它的话。
然后在要执行脚本的事件处理程序中使用它
Page.RegisterStartUp("PageClose",str.ToString());
这会将javascript放在呈现的页面的结束标记之前
Page.ClientScriptBlock("PageClose",str.ToString());
这会将JS函数放在呈现的页面的开始标记
之后希望这有帮助