我正在构建一个ASP.NET网站,我对一个页面的行为感到困惑,我有一个很长的表单和一个提交按钮,我在页面下面有一段javascript来处理在提交表单时向上滚动页面,第一次单击提交按钮时,所有后续点击都不起作用,任何想法为什么?
<script type="text/javascript">
$(".thebutton").click(function(){
$("html, body").animate({scrollTop: 200}, 1000);
});
</script>
干杯, THI
答案 0 :(得分:0)
如果您的“提交”按钮执行完整回发,我会在第二个网页实例上查看源代码,并确保该脚本仍在那里。
答案 1 :(得分:0)
您的脚本将在帖子之前运行。
想象一下,如果你愿意:
初始页面加载 使用jQuery绑定Click事件
单击按钮 引发了jQuery Click html和body scrollTop设置为200 在“animate”期间提交表格
运行asp.net后端点击事件代码 页面重新加载。
string script = "$(function() { $('html, body').scrollTop(200); });";
ClientScript.RegisterStartupScript(this.GetType(), "scrollTop", script, true);
这应该照顾你想要完成的事情。
希望它有所帮助。
答案 2 :(得分:0)
稀释,
使用Ajax帖子使我的帖子与上面的帖子不同。
您的ajax呼叫是否更改了页面上的按钮?我假设你正在使用一个带有qustion中按钮的UpdatePanel。
因为当您进行Ajax调用时,正在重建UpdatePanel中的控件,DOM将它们视为不同的对象,并且这些新对象不再绑定到jQuery单击函数。您需要在ajax发布后重新绑定这些按钮click事件,以重新启用您要查找的功能。
使用jQuerys新的“实时”处理程序应该可以帮到你:
$(".thebutton").live("click", function() {
$("html, body").animate({scrollTop: 200}, 1000);
});
希望它有所帮助。