Как вывести сообщения об ошибках проверки CodeIgniter на SweetAlert с переносами строк? - PullRequest
0 голосов
/ 28 апреля 2018

в файле контроллера:

Вот как я могу просмотреть ошибки проверки json_encode:

if ($this->form_validation->run() == FALSE) { //if validation does not run
    $errors = $this->form_validation->error_array();
    echo json_encode(['error' => true, 'errors' => $errors]);
}

in Просмотр файла:

if (res.errors) {
    var errorMsgs = "";
    errorMsgs += res.errors.name1 ? res.errors.name1 + "<br/>" : ""; //only if have an error msg.
    errorMsgs += res.errors.name2 ? res.errors.name2 + "<br/>" : ""; //only if have an error msg.
    errorMsgs += res.errors.name3 ? res.errors.name3 : ""; //only if have an error msg.

    // SweetAlert
    swal({ 
        text: errorMsgs // error msg
    });
}

Вывод на SweetAlert:

Это сообщение об ошибке поля Name1. <br/> Это сообщение об ошибке поля Name2. <br/> Это сообщение об ошибке поля Name3.

Ответы [ 2 ]

0 голосов
/ 28 апреля 2018

Корпус https://sweetalert.js.org/ VS https://sweetalert2.github.io/

Для: https://sweetalert.js.org/

Как сказано в документации: html больше не используется.

https://sweetalert.js.org/docs/

Вместо этого используйте объект содержимого.

swal({
  content: "input",
});

Для: https://sweetalert2.github.io/

если вы используете этот плагин SweetAlert2 отсюда

https://sweetalert2.github.io/

Вы можете получить желаемый результат с помощью html

swal({
        title: "<i>Title</i>", 
        html: 'A custom message.</br> jkldfjkjdklfjlk',

    });

с использованием второго плагина:

<script src="https://unpkg.com/sweetalert2@7.19.1/dist/sweetalert2.all.js"></script>

вы можете получить с html:

if (res.errors) {
    var errorMsgs = "";
    errorMsgs += res.errors.name1 ? res.errors.name1 + "<br/>" : ""; //only if have an error msg.
    errorMsgs += res.errors.name2 ? res.errors.name2 + "<br/>" : ""; //only if have an error msg.
    errorMsgs += res.errors.name3 ? res.errors.name3 : ""; //only if have an error msg.

    // SweetAlert
    swal({ 
        html: errorMsgs // error msg
    });
}
0 голосов
/ 28 апреля 2018

нашел решение сам. : D

просто используйте "\ n" вместо "<br>"!

errorMsgs += res.errors.name1 ? res.errors.name1 + "\n" : "";
...