防止默认不起作用,不确定原因

时间:2017-02-28 05:07:19

标签: javascript jquery html

我应该按回车键提交表格

我的代码不适用于此Kafka Consumer does not receive messages ,但它适用于此FIDDLE。 我不确定为什么,并希望看看是否有人知道原因。代码完全相同

var i = 0;
var allowed = /^[a-zA-Z0-9]+$/;

$('#form').submit(function(e) {
    var input = $('#t_input1').val();
    var ar = $('#t_input1').data('name');
    if (!allowed.test(input)) {
        alert("Name can have only letters and numbers.\n\n Names Already Submitted: " + ar.join(" , "));
        return false;
    } else {
        ar[i] = input;
        alert("Your name was successfully submitted\n\n Names Already Submitted: " + ar.join(" , "));
        i = i + 1;
        return false;
    }

})

4 个答案:

答案 0 :(得分:0)

你没有在第一个小提琴中加入jQuery,这就是为什么$无法解决或定义错误的原因。

第二小提琴确实包括jQuery,它正在按预期工作。

答案 1 :(得分:0)

显示$未定义。这意味着您没有在项目中包含jQuery。 在代码中添加jQueryworking fiddle here

答案 2 :(得分:-1)

Add 

    $('#form').submit(function(e){
e.preventDefault(); // Saves from Reloading of page
var input = $('#t_input1').val();
    var ar = $('#t_input1').data('name');
    if(!allowed.test(input)){
        alert("Name can have only letters and numbers.\n\n Names Already Submitted: "+ ar.join(" , "));
        return false;
    }else{
    ar[i]=  input;
            alert("Your name was successfully submitted\n\n Names Already Submitted: "+ ar.join(" , ") );
        i = i+1;
       return false;
    }
});

答案 3 :(得分:-1)

尝试以下代码
当输入与您的正则表达式不匹配时,将进行验证并且页面将不会提交    在if(!allowed.test(input)){

中使用preventDefault
  $('#form').submit(function (e) {
          var input = $('#t_input1').val();
            var ar = $('#t_input1').data('name');
            if (!allowed.test(input)) {
                alert("Name can have only letters and numbers.\n\n Names Already Submitted: " + ar.join(" , "));
                e.preventDefault();
                return false;
            } else {
                ar[i] = input;
                alert("Your name was successfully submitted\n\n Names Already Submitted: " + ar.join(" , "));
                i = i + 1;
                return false;
            }
        })