使用Meteor阻止表单提交

时间:2015-06-05 17:28:25

标签: javascript jquery forms meteor

当我点击表单中的字段并按Enter键时,表单将被提交。

这对我的用例不利,需要避免。

我尝试了几个步骤但没有成功:

template.rendered

$('#myForm').on("keyup keypress", function(e) {
    var code = e.keyCode || e.which;
    if (code  == 13) {
        e.preventDefault();
        return false;
    }
});

$("form").submit(function( event ) {
    event.preventDefault();
});

Template.events

"keyup #myform": function(event){
  event.preventDefault();
}

还没有任何帮助。我正在使用Meteor和语义ui。

还有什么可以帮助?

3 个答案:

答案 0 :(得分:5)

改变这个:

"keyup #myform": function(event){
  event.preventDefault();
}

为:

"submit #myform": function(event){
  event.preventDefault();
}

点击“输入”会触发“提交”,因此您在浪费时间尝试找出与“输入”关联的键码。

答案 1 :(得分:1)

试试这个:

Template.<your_template_name>.events({        
   // Submit form event
    'submit form': function(event){
        // Stop form submission
        event.preventDefault();
    }
});

答案 2 :(得分:0)

如果您希望仅在用户在表单字段中按“输入”时阻止提交表单,是否应该使用keydown事件?

这样,您甚至可以仅将其用于表单的最后一个字段。