网页调用自身后jquery不工作

网页调用自身后jquery不工作,jquery,mobile,Jquery,Mobile,有点难以解释。但这里的网站: 左上角的按钮打开侧栏导航 当用户输入登录信息时,页面使用以下代码调用自身: <h5>Sign In</h5> <form name=\"input\" action=\"index.php\" method=\"post\"> User Name: <input type=\"text\" name=\"user\" id=\"user\" /> </p> Password: <inpu

有点难以解释。但这里的网站:

左上角的按钮打开侧栏导航

当用户输入登录信息时,页面使用以下代码调用自身:

<h5>Sign In</h5>

 <form name=\"input\" action=\"index.php\" method=\"post\">
 User Name: <input type=\"text\" name=\"user\"  id=\"user\" />
 </p>
 Password: <input type=\"password\" name=\"password\" id=\"password\" />
 <div class=\"blank-divider\"></div>    
    <p>
 <input type=\"submit\" name = \"login\" value=\"login\" />
 </p>
 </form>
登录
用户名:

密码:

当页面要求自己成功登录或失败登录时,滑出不再打开

以下是jquery的代码:

<!--Toggle Menu-->
<script type="text/javascript">
            $(function() {
                $('#navigation').click(function() {
                    $('.navigation').slideToggle('fast');
                    return false;
                });
            });
</script>

$(函数(){
$(“#导航”)。单击(函数(){
$('.navigation').slideToggle('fast');
返回false;
});
});
要总结如何重现问题,请转到上面的链接。尝试右上角的按钮,查看侧栏是否弹出。然后输入一些随机登录信息并尝试登录。当下一页加载时,再次尝试左上角的登录按钮,此时侧栏将不会显示


有什么想法吗?

据我所知,加载页面时没有带有“导航”ID的元素。如果它是动态添加的,除非使用.on将其绑定到主体,否则它将不起作用


我将$(“#navigation”)更改为$(“.showMenu”),效果非常好。

在做了更多的研究后,我发现这与jquery mobile中使用ajax自动完成的页面刷新有关

对我来说,一个快速解决办法是:

data-ajax="false"
在form元素中使用上述属性将强制刷新整个页面,从而允许我的查询调用工作


这不是一个理想的解决方案,因为我仍在努力解决这个问题。但目前这是一个快速而肮脏的解决方案

我把它改成了这个:它对我来说没有任何改变。我是否更改了错误的内容?您在pastebin中更改了正确的内容,但我刚进入您的站点,错误的代码仍在继续。请尝试重新加载它,我把它放回去给其他阅读这篇文章的人看,但现在它与你的更正一起使用了。我在这里放了两种不同的解决方案:第一种更好,但我不确定它是否与你正在使用的Jquery版本兼容。如果不起作用,试试第二种。如果两者都不起作用,请告诉我,然后我们尝试其他方法。我查看了移动文档,第一件事是:“重要:使用$(document.bind('pageinit'),而不是$(document.ready()”。我想你的问题可能与。。。