Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 棘轮';s push.js表单submit重新加载页面,使push.js替换div时出错_Javascript_Jquery_Html_Push.js - Fatal编程技术网

Javascript 棘轮';s push.js表单submit重新加载页面,使push.js替换div时出错

Javascript 棘轮';s push.js表单submit重新加载页面,使push.js替换div时出错,javascript,jquery,html,push.js,Javascript,Jquery,Html,Push.js,我正在用ratchet.js(及其push.js)开发一个web应用程序,但有一个非常基本的问题。我的CSS代码将元素放在一个页面的三列中。然后,用户可以单击导航栏按钮转到下一页。进入下一页后,用户可以搜索某些内容。对于搜索,我通过表单处理它,并使用jquery来检测表单何时提交。但是,在提交表单时,页面将被重新加载,push.js将出现故障。发生这种情况时,用户单击返回第一个页面,我的css无法正常工作,因为它仍然被第二个页面的content div包围。我的问题是:有没有一种方法可以在不重新

我正在用ratchet.js(及其push.js)开发一个web应用程序,但有一个非常基本的问题。我的CSS代码将元素放在一个页面的三列中。然后,用户可以单击导航栏按钮转到下一页。进入下一页后,用户可以搜索某些内容。对于搜索,我通过表单处理它,并使用jquery来检测表单何时提交。但是,在提交表单时,页面将被重新加载,push.js将出现故障。发生这种情况时,用户单击返回第一个页面,我的css无法正常工作,因为它仍然被第二个页面的content div包围。我的问题是:有没有一种方法可以在不重新加载页面的情况下提交表单(jquery的event.preventDefault()不起作用)?如果没有,是否可以使用push.js,然后在转换完成后重新加载页面

基本代码示例: 第1页----


随机左
随机中心
随机权利
第2页

    <body>
        <div class="content">
            <form id="search">
                <input type="search" id="searcher" placeholder="Search" style="width: 95%;">
            </form>
        </div>
    </body>

    necessary imports (jquery etc)

    <script type="text/javascript">
         $("#search").submit(function(event) {
              event.preventDefault(); // does not do anything (push.js... reloads page)
         });

    </script>

必要的导入(jquery等)
$(“#搜索”).submit(函数(事件){
event.preventDefault();//不执行任何操作(push.js…重新加载页面)
});

为了重申我的问题,用户单击一个链接(基本代码中未显示)使用push.js转到第2页。在第2页中,他们确定页面在不应该重新加载的地方重新加载(我使用ajax来利用搜索查询等)。当用户返回时,左、中、右css不再工作。

如果您尝试以下操作(以return false结束),该怎么办


$(“#搜索”).submit(函数(事件){
event.preventDefault();//不执行任何操作(push.js…重新加载页面)
//你的逻辑在这里
返回false;
});

这可能有点晚了,但我认为您的问题是推送加载的页面上的脚本标记无法运行


也就是说,第2页上的代码根本没有运行。

您是否尝试将javascript放入内容中?
    <body>
        <div class="content">
            <form id="search">
                <input type="search" id="searcher" placeholder="Search" style="width: 95%;">
            </form>
        </div>
    </body>

    necessary imports (jquery etc)

    <script type="text/javascript">
         $("#search").submit(function(event) {
              event.preventDefault(); // does not do anything (push.js... reloads page)
         });

    </script>
<script type="text/javascript">
     $("#search").submit(function(event) {
          event.preventDefault(); // does not do anything (push.js... reloads page)
          // your logic here

          return false;
     });

</script>