在jmber.js应用程序中实现jQuery

时间:2016-04-19 10:44:31

标签: javascript jquery ember.js

我已经要求对在Ember.js中创建的应用程序进行调整,但我没有太多使用它的经验。我删除/添加了字段,添加了必要的文本,最后要完成的任务是验证字段(电话号码)以确保它们是相同的。它适用于我的localhost,但它不适用于Ember应用程序。

这是Ember.js

$(function(){
var $primaryNo = $("input[name='primary_phone']");
var $confirmNo = $("input[name='confirm_phone']");
var $btn = $('#button');

$primaryNo.keypress(function(key) {
    if(key.charCode < 48 || key.charCode > 57) 
    return false;
});

$confirmNo.keypress(function(key) {
    if(key.charCode < 48 || key.charCode > 57) 
    return false;
});

$btn.click(function() {
     if ($primaryNo.val() !== $confirmNo.val()) {
        alert('The numbers from the Primary Phone field and the Confirm Primary Phone field do not match. Please re-enter');
     } else {
        return true;
     }

});

});

这是我的jQuery

|

我已经使用console.log进行了一些测试,Ember应用程序正在拾取我已经包含的.js文件,但是当我在字段中插入两个不同的数字时单击提交时,它不会提醒用户他们不对。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

尝试事件委托:

$(function(){
var $primaryNo = $("input[name='primary_phone']");
var $confirmNo = $("input[name='confirm_phone']");
var $btn = $('#button');

$('body').on('keypress',$primaryNo,function(key) {
    if(key.keyCode < 48 || key.keyCode > 57) 
    return false;
});

$('body').on('keypress',$confirmNo,function(key) {
    if(key.keyCode < 48 || key.keyCode > 57) 
    return false;
});

$('body').on('click',$btn,function(e) {
     e.preventDefault();
     if ($primaryNo.val() !== $confirmNo.val()) {
        alert('The numbers from the Primary Phone field and the Confirm Primary Phone field do not match. Please re-enter');
     } else {
       $(this).closest('form').submit();
     }

});

});