duanre4421 2012-08-16 18:55
浏览 89
已采纳

如何在表单提交上停止页面刷新

I have a form which automatically refreshes the page on submit, I have tried adding:

onSubmit="return false;" to the form element, but then the form just stops and nothing happens when you click submit.

I wouldnt mind the page refresh so much but the form is at the bottom of the page and the refresh kicks you back to the top. So I tried this approach:

<form name='test' method='POST' action="index.php" onSubmit="window.scrollTo(5000,500);">

This works for a split second but then something else overrides it (not sure what)

I have also tried using php: header.location just to get a "headers have already been sent" error.

The site in question can be seen here, and the form is at the very bottom.

The only two jquery libraries I am using that I could foresee any conflicts with are nicescroll and (more likely) waypoints, but i dug through them both and couldn't find any conflicting issues.

If anyone knows of a way to keep the functionality of the form but stop the refresh of the page, that would be wonderful Thanks

EDIT: After reading the answers below, it looks like I will have to use ajax to acomplish this, I have absolutely no experience with ajax, so I will see how that goes.

  • 写回答

3条回答 默认 最新

  • dqp10099 2012-08-16 18:57
    关注

    It seems you need to go through of way of AJAX submission in that case. In that case, you can use jQuery $.ajax() method to do that. A sample below:

    HTML

    <form name='test' method='POST' action="index.php">
    

    jQuery

    $('form[name=test]').submit(function(e) {
       e.preventDefault();
       window.scrollTo(5000,500);
    
       // a sample AJAX request
       $.ajax({
         url : this.action,
         type : this.method,
         data : $(this).serialize(),
         success : function(response) {
    
         }
       });
    });
    

    Here, .preventDefault() is for stop page refresh on form submit.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?
  • ¥50 invest生境质量模块
  • ¥15 nhanes加权logistic回归,svyglm函数