1

我在 html 上有表单并使用以下代码提交表单

<div class="submit-clear">
<input  id="generate" type="submit"  name="script" value="create"/>
</div>

表单数据将单独显示在div哈希标签页面的底部#output

输出部分 div id 是

<div id="output-main">

<-------output of the form data will be displayed here---->

</div>

用户提交表单后,我需要将网页滚动到该<div id="output-main">部分以显示输出。在搜索了上一个问题后,我得到了以下解决方案,但它对我不起作用。请在这里帮助我

$('#generate').click(function() {

   $.scrollTo($('#output-main'), 500);
});

编辑:

表单提交后我必须滚动网页。表单提交后网页将刷新数据,并加载带有表单输出的#ouput页面

4

4 回答 4

4

您是否正确包含了 scrollTo?您确定在其他地方没有收到任何 js 错误(这可能会破坏您的代码)吗?

这是一个工作演示:http: //jsfiddle.net/8Cy7V/

$("#generate").click(function() {
    $.scrollTo( '#output-main', 800);
});
于 2013-08-08T11:15:53.227 回答
1

尝试这个:

$(document).ready( function() {
   $('#generate').click(function(e) {
       e.preventDefault();
       $('html, body').animate({scrollTop:$("#output-main").offset().top}, 500);
   }); 
});

小提琴

于 2013-08-08T11:03:43.900 回答
0
$("#output-main").scrollTop($("#output-main")[0].scrollHeight);
于 2013-08-08T10:50:14.327 回答
-1

你提交表格吗?我的意思是,单击提交时您的页面是否刷新?如果是,请尝试以下代码:

$(document).ready(function(){
   var item = $('#output-main');
   $('html,body').animate({scrollTop: item.offset().top});
});

确保 jquery 包含在此页面上。当然,你必须检查你想什么时候执行上面的代码。您必须检查是否仅提交表单然后代码应该运行而不是文档就绪状态。

于 2013-08-08T10:48:51.397 回答