Ajax jquery自动表单提交问题


ajax jquery auto form submission issue

我使用下面的代码自动提交表单没有刷新,但问题是,当我使用手动提交按钮在表单字段和提交它只是工作正常,但自动提交刷新。我想提交的形式和存储在mysql中的数据。手动提交和自动提交的数据被存储但是页面被自动提交刷新了我不想要的

<script type="text/javascript">
window.onload = function() {
  setTimeout('document.form1.submit()',10000);
}
</script>
<script type="text/javascript" >
$(function() {
$(".button").click(function() {
var searchBox = $("#searchBox").val();
var dataString = 'searchBox='+ searchBox ;
if(searchBox=='')
{
   $('.success').fadeOut(200).hide();
   $('.error').fadeOut(200).show();
}
else
{
   $.ajax({
   type: "POST",
   url: "ytitest1.php",
   data: dataString,
   success: function(){
   $('.success').fadeIn(200).show();
   $('.error').fadeOut(200).hide();
}
});
}
return false;
});
});

 </script>

这里是活动链接http://way2enjoy.com/try/k/ytitest1.php

我想要自动提交,但页面不应该刷新

    <script type="text/javascript" >
    $(function() {
        $("form").submit(function() {
            var searchBox = $("#searchBox").val();
            var dataString = 'searchBox='+ searchBox ;
            if(searchBox=='')
            {
                $('.success').fadeOut(200).hide();
                $('.error').fadeOut(200).show();
            }
            else
            {
                $.ajax({
                    type: "POST",
                    url: "ytitest1.php",
                    data: dataString,
                    success: function(){
                        $('.success').fadeIn(200).show();
                        $('.error').fadeOut(200).hide();
                    }
                });
            }
            return false;
        });
    });
     </script>

当自动提交表单onsubmit事件被触发时,不要点击

这就是你需要的,我已经包含了整个代码供你参考。

这个例子将表单本身绑定到ajax调用,当它被调用时,表单操作不做任何事情,只处理jquery。

可用于自动呼叫或手动呼叫。
<html>
    <head>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
    </head>
    <body>
        <form id="myform" name="myform" action="#NULL" method="POST">
            <input type="text" name="myname">
            <input type="submit">
        </form>
        <script>
            $(document).ready(function() {
               setTimeout(function() {
                   $('#myform').submit();
               }, 1000);
               $('#myform').submit(function(e) {
                  e.preventDefault();
                  window.alert('Do work here.'); 
               }); 
            });
        </script>
    </body>
</html>

这里是jQuery .submit()处理程序的文档:http://api.jquery.com/submit/,其中还包括。preventdefault()的信息。

你的。click函数应该有一个参数,然后添加

e.preventDefault();
函数体中的

$(function() {
$(".button").click(function(e) {
e.preventDefault(); 
var searchBox = $("#searchBox").val();
var dataString = 'searchBox='+ searchBox ;
if(searchBox=='')
{
   $('.success').fadeOut(200).hide();
   $('.error').fadeOut(200).show();
}
else
{
   $.ajax({
   type: "POST",
   url: "ytitest1.php",
   data: dataString,
   success: function(){
   $('.success').fadeIn(200).show();
   $('.error').fadeOut(200).hide();
}
});
}
});
});