C# 使用updatepanel和MasterPage将javascript Scroll设置为提交表单后
我在updatepanel中有一个带有提交功能的表单 为了测试它,我使用了alert,它工作正常。我提交表单,然后弹出警报。所以代码是有效的C# 使用updatepanel和MasterPage将javascript Scroll设置为提交表单后,c#,javascript,asp.net,updatepanel,C#,Javascript,Asp.net,Updatepanel,我在updatepanel中有一个带有提交功能的表单 为了测试它,我使用了alert,它工作正常。我提交表单,然后弹出警报。所以代码是有效的 protected void SendProfileForm_Click(object sender, EventArgs e) { ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "ScrollTo", "alert('test');", true)
protected void SendProfileForm_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(),
"ScrollTo", "alert('test');", true);
}
现在我把它换成这个,这个什么也不做
protected void SendProfileForm_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(),
"ScrollTo", "window.scrollTo(0, 500);", true);
}
如果我用这个代码窗口进行onclientclick.scrollTo(0500);然后它就开始工作了。因此,这段javascript代码正在运行
protected void SendProfileForm_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(),
"ScrollTo", "alert('test');", true);
}
我做错了什么。因为您正在发布异步调用,所以必须使用
ScriptManager
客户端API:
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(MyScrollTo);
这将在每次加载页面时触发功能。因此,您需要为这项工作编写一些逻辑代码:
var needScroll;
function MyScrollTo(){
if(needScroll){
window.scrollTo(0,500);
}
}
因此,服务器端代码需要设置needScroll
变量:
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(),
"ScrollTo", "var needScroll = true;", true);
如果您想了解有关ScriptManager
客户端API的更多信息,请查看。由于您正在发布异步调用,因此必须使用ScriptManager
客户端API:
Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(MyScrollTo);
这将在每次加载页面时触发功能。因此,您需要为这项工作编写一些逻辑代码:
var needScroll;
function MyScrollTo(){
if(needScroll){
window.scrollTo(0,500);
}
}
因此,服务器端代码需要设置needScroll
变量:
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(),
"ScrollTo", "var needScroll = true;", true);
如果您想了解有关ScriptManager
客户端API的更多信息,请查看。您有没有示例?我查过了,但没法使它起作用。我必须从代码后面动态调用脚本,因为我想滚动到页面上的不同部分。谢谢。我详细说明了我的答案。你能再试一次吗?如果它在第一次工作,请再试一次。有时候ScriptManager
不喜欢你直接使用javascript。你有没有一个例子?我查过了,但没法使它起作用。我必须从代码后面动态调用脚本,因为我想滚动到页面上的不同部分。谢谢。我详细说明了我的答案。你能再试一次吗?如果它在第一次工作,请再试一次。有时ScriptManager
不喜欢您直接使用javascript。