Это не даст места - в разделе кода

0

Таким образом, если я заполняю имя и фамилию в этой форме, но у вас нет электронной почты и пароля, вы увидите ее и напишите вот так:

" Du mangler adgangskodeprofilbillede "

Я бы хотел, чтобы ремешок делал это так:

" Du mangler adgangskode, profilbillede "

Также может быть, что это было как первое, так и последнее имя как недостающее, но все равно придется делать то же самое.

но если я вообще ничего не написал в контенте, так что он вполне может вернуться и написать его красиво, т.е.

" Du mangler Email, Пароль, Форнавн, Efternavn, Profilbillede "

Я написал некоторые из них на датском языке, поэтому мы можем видеть только ошибку

$(function () {
    var $opretbruger = $('form[name="opretbruger"]'),
    $usr = $("#email"),
    $pwd = $("#pass1"),
    $navn = $("#fornavn"),
    $efter = $("#efternavn"),
    $pb = $("#pb");

    $opretbruger.on("submit", function (event) {
        var msg = "Du mangler ",
        usr = ($usr.val().trim() !== ""),
        pwd = ($pwd.val().trim() !== ""),
        navn = ($navn.val().trim() !== ""),
        efter = ($efter.val().trim() !== ""),
        pb = ($efter.val().trim() !== "");

        msg += !usr ? "E-mail" : "";
    msg += !usr && !pwd ? ", " : "";
        msg += !pwd ? "kodeord" : "";
    msg += !usr && !pwd && !navn ? ", " : "";
        msg += !navn ? "Fornavn" : "";
    msg += !usr && !pwd && !navn && !efter ? ", " : "";
        msg += !efter ? "Efternavn" : "";
    msg += !usr && !pwd && !navn && !efter && !pb ? ", " : "";
        msg += !pb ? "Profilbillede" : "";

        var valid = pwd && usr && navn && efter;
        if (!valid) {
            alert(msg);
        }

        return valid;
    });
});

Eidt

    $(function () {
    var $opretbruger = $('form[name="opretbruger"]'),
        $usr = $("#email"),
        $pwd = $("#pass1"),
        $navn = $("#fornavn"),
        $efter = $("#efternavn"),
        $pb = $("#pb");

    $opretbruger.on("submit", function (event) {

        var errors = [],
        valid = true,
        usr = ($usr.val().trim() !== ""),
        pwd = ($pwd.val().trim() !== ""),
        navn = ($navn.val().trim() !== ""),
        efter = ($efter.val().trim() !== ""),
        pb = ($efter.val().trim() !== "");

        if (!usr) errors.push("E-mail");
        if (!pwd) errors.push ("kodeord");
        if (!navn) errors.push("Fornavn");
        if (!efter) errors.push ("Efternavn");
        if (!pb) errors.push("Profilbillede");

        if (errors.length) {
            var last = errors.length>1 ? ((errors.length>2) ? "," : "") + " & " + errors.pop() : "";
            var "Du mangler " + msg = errors.join(", ") + last;
            valid = false;
            alert(msg);
        }

        return valid;

    });
});
Теги:

1 ответ

1
Лучший ответ

Что есть со всеми добавлением строки, просто используйте массив с присоединением

$opretbruger.on("submit", function (event) {

    var errors = [],
    valid = true,
    usr = ($usr.val().trim() !== ""),
    pwd = ($pwd.val().trim() !== ""),
    navn = ($navn.val().trim() !== ""),
    efter = ($efter.val().trim() !== ""),
    pb = ($efter.val().trim() !== "");

    if (!usr) errors.push("E-mail");
    if (!pwd) errors.push ("kodeord");
    /* rest of checks here */

    if (errors.length) {
        var msg = "Du mangler " + errors.join(", ");
        valid = false;
        alert(msg);
    }

    return valid;

});

Если вы хотите сделать вывод немного более причудливым, добавив "&" для последнего элемента, что-то вроде этого будет работать

if (errors.length) {
    var last = errors.length>1 ? ((errors.length>2) ? "," : "") + " & " + errors.pop() : "";
    var msg = "Du mangler " + errors.join(", ") + last;
    valid = false;
    alert(msg);
}
  • 0
    Извините, но я не могу точно увидеть, как я собирался это встроить :)
  • 0
    Вы не знаете, как добавить это в свой код? Удалите код msg += ... с этим.
Показать ещё 9 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню