输入上的小胡子失去了按键事件

时间:2016-03-28 07:21:59

标签: javascript jquery mustache

我在javascript(jquery)中有一个登录页面,并且用Mustache模板化

javscript将html内容添加到页面(基本上是一个常见的标题),最后我做了一个Mustache.to_html ,用指定的语言将文本更改为正确的文本(我使用的是Moustache)作为一个简单的多语言解决方案)。

在最后一步中,所有按键事件都无效

如果我删除了Mustache.to_html,它就可以了。

login.html(gcf_generals_post.js是Mustache调用的地方,login.js是keypress事件绑定的地方):

...
<!-- Personalitzacions -->
<script src="../js_gcf/gcf_generals.js"></script>
<script src="../js_gcf/gcf_generals_pre.js"></script>
<script src="js/login.js"></script>
<script src="../js_gcf/gcf_generals_post.js"></script>

</head>
...

login.js:

$(document).ready(function() {
    $("#user").val(localStorage.usuari);
    $("#remember")[0].checked = localStorage.recordarLogin;

    /* Carreguem el header comú del portal*/
    $("#gcf_header").load("thor_header_simple.html");

    $("#remember").click(function() {
            localStorage.recordarLogin = $("#remember")[0].checked;
    });
    $('#user').keypress(function(e){
            if(e.which === 13) {
                    $('#password').focus();
            }
    });
    $('#password').keypress(function(e){
            if(e.which === 13) {
                    $('#gcf_bLogin').click();
            }
    });

    $("#gcf_bLogin").click(function() {
            sessionStorage.usuari = $("#user").val();
            sessionStorage.token = "";
...

gcf_generals_post.js:

$(document).ready(function() {
    /* Carreguem textos => Tot el contingut dels elements de classe gcf_mlg */

    $.getJSON('gcf_mlg/mlg_ca.json')
    .done(function(data) {
        $('.gcf_mlg').each(function() {
            var template = $(this).html();
            var html = Mustache.to_html(template, data);
            $(this).empty().html(html);
        });
    });

});

我怀疑用$(this).html(...)更改输入内容会删除按键事件,但我不知道如何解决它。显然,我在发布这个问题之前做了很多谷歌搜索。

任何人都可以对此有所了解吗?

此致

Seak

0 个答案:

没有答案