密钥更改未在js文件中触发

时间:2013-10-24 07:01:38

标签: javascript jquery

j("input[name='textFriendEmail']").bind('keyup change',function (e){
                    var value = j(this).val();
                    j('#toEmail').val(value);
                });

js文件包含此代码但不触发。这段代码有问题吗?

我尝试将其放在seprate文件中并链接到页面增益但没有运气。帮助。

3 个答案:

答案 0 :(得分:2)

您需要将代码包装在DOM ready事件中。由于您使用的是jQuery 1.10,因此您还应该使用.on替换绑定函数:

j(function() {
    // This is only fired when the DOM is ready
    j(document).on("keyup change", "input[name='textFriendEmail']",function (e){
        // This is fired on keyup/change of the textFriendEmail input
        var value = j(this).val();
        j('#toEmail').val(value);
    });
});

来自jQuery文档:

  

从jQuery 1.7开始,.on()方法是首选方法   将事件处理程序附加到文档

答案 1 :(得分:1)

您的代码运行正常。检查它是否包含在DOM就绪函数中。它应该在里面。

j(document).ready(function(){
   j("input[name='textFriendEmail']").bind('keyup change',function (e){
                    var value = j(this).val();
                    console.log(value);
                    j('#toEmail').val(value);
                });
});

以下是工作演示:http://jsfiddle.net/kVNuj/

答案 2 :(得分:0)

j(document).ready(function(){
    j("input[name='textFriendEmail']").on('keyup change',function (e){
        var value = j(this).val();
        j('#toEmail').val(value);
    });
});