输入内容在几秒钟后消失

时间:2014-12-28 14:50:36

标签: jquery forms input

我创建了一个简单的输入表单。单击该按钮时,内容将前置为“ul”。这很好,但几乎立刻新创建的li消失了。

我创建了一个jsfiddle,几秒钟后出现错误。 http://jsfiddle.net/pcgwqbbx/

jQuery代码

$(".input").keyup(function() {
    var characters = $(this).val().length;
    $(".chars").text(characters).append(" Zeichen eingegeben");
    if ($(this).val().length <= 0) {
        $(".submit").addClass("disabled").attr("disabled", "disabled");
    } else {
        $(".submit").removeClass("disabled").removeAttr("disabled");
    }
});

$(".submit").click(function() {
    var post = $(".input").val();
    $("<li>").text(post).prependTo("ul");
});
$(".submit").addClass("disabled").attr("disabled", "disabled");

我做错了什么?

非常感谢

2 个答案:

答案 0 :(得分:1)

演示 - http://jsfiddle.net/pcgwqbbx/1/

只需将输入类型submit更改为button

即可
<input type="submit" name="submit" class="submit" value="Eintragen" />

<input type="button" name="submit" class="submit" value="Eintragen" />

答案 1 :(得分:0)

您需要在输入return false;

时使用type="submit"
var main = function () {

    $(".input").keyup(function() {
        var characters = $(this).val().length;
        $(".chars").text(characters).append(" Zeichen eingegeben");
        if ($(this).val().length <= 0) {
            $(".submit").addClass("disabled").attr("disabled", "disabled");
        } else {
            $(".submit").removeClass("disabled").removeAttr("disabled");
        }
    });

    $(".submit").click(function() {
        var post = $(".input").val();
        $("<li>").text(post).prependTo("ul");
        return false;
    });
    $(".submit").addClass("disabled").attr("disabled", "disabled");
};

$(document).ready(main);

Jsfiddle