【问题标题】:Refresh Page with URL Hash after Submitting Form with jQuery Tabs使用 jQuery 选项卡提交表单后使用 URL 哈希刷新页面
【发布时间】:2018-07-21 09:53:54
【问题描述】:

我是一个长期自学成才的用户,只是从来没有遇到过没有以某种形式得到解答的问题。很棒的社区谢谢大家!

所以我很困惑为什么javascript 不能正确刷新我的页面。

我有一个非常大的页面,我使用jquery 和带有 url 哈希标记的垂直选项卡。这是我更新到最新版本后最近添加的一个新功能。

点击提交后,表单会刷新,如果设置了 $_POST[update],它将运行一组查询。然后我有一个 javascript 超时刷新页面(理想情况下到正确的选项卡前:home/database.php?file=101#tab3)

摘录我的杂乱代码:

if(isset($_POST['update']))
    { do a bunch of sql stuff
    ....
    <pre>
    <?PHP
        //unset update variable
        $_POST = array();

        //print_r(get_defined_vars());

    ?>
    </pre>
    </br>
    <script type="text/javascript">
        function Redirect() {
            $('#redirect').trigger('click');
        }
        var currenturl = window.location.href;

        document.write("<form action=" + currenturl +"><input type=submit name=redirect value=Redirect></form>");

        document.write("</br>You will be redirected back to the file in 2 seconds.");


        setTimeout('Redirect()', 2000);
        </script>
    <?php
    mysql_close($conn);
}
else
    { display usual data....check boxes etc

现在我尝试了各种可能的方式来提神。我清除了 $_POST 数组,因此页面应该重新加载显示信息,但事实并非如此。但是,我对正在运行的查询的确认显示更新了 0 行,因此它没有触发 sql,但也没有正确刷新。

我发现了一个功能,可以在浏览器会话中存储上次单击的选项卡,但是当您切换文件时,它会跳到该选项卡。相反,我想显示默认选项卡。

我什至尝试制作一个按钮,点击它会转到上面显示的正确网址。当我手动单击它时它可以工作,但当我通过javascript 触发它时它不起作用。甚至转到相应的选项卡。

我正在使用以下函数更新地址栏中的 url。还使用最新版本的 chrome。

    <script>
    $( "#tabs" ).tabs({
        activate: function(event, ui) {                   
            window.location.replace('#' + $(ui.newPanel).attr('id'));
            var curTab = $(ui.newPanel).attr('id');
            console.log(curTab);
        }
    });
    </script>

【问题讨论】:

    标签: javascript jquery html url hash


    【解决方案1】:

    您为什么不在&lt;form_url&gt;?&lt;params&gt;#3 之后发送该号码而不是将该号码作为request param in the url 发送,例如像这样的&lt;form_url&gt;?tab=3

    【讨论】:

    • 我试过做类似的事情,但是页面没有正确刷新的事实会更容易解决。
    • 你错了,正如我所指出的那样,改变你发送tab 属性的方式更容易,并且适用于所有情况。
    猜你喜欢
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 2013-11-11
    • 1970-01-01
    • 2012-05-25
    • 1970-01-01
    相关资源
    最近更新 更多