form_validation все еще отображается при перезагрузке - PullRequest
0 голосов
/ 23 января 2019

У меня есть форма, которую я использую form_validation для проверки ошибок, когда я отправляю ее, показывают ошибки и set_value ввода, но если перезагрузить страницу с помощью ctrl + r, ошибка и set_value все еще показывают.

Кто-нибудь знает, как снова загрузить пустую форму

Контроллер:

public function ajoutAffairePI(){

        $this->form_validation->set_rules('nomPrenomAD','Nom Prenom','required|min_length[5]',array(
            'required' => "Le champ %s est obligatoire.",
            'min_length' => "Le champ %s doit comporter au moins 5 caractères."
        ));

        $this->form_validation->set_rules('matriculePA','Matricule','required|min_length[8]|max_length[8]|numeric',array(
            'required' => "Le champ %s est obligatoire.",
            'min_length' => "Le champ %s doit comporter au moins 8 caractères.",
            'max_length' => "Le champ %s ne peut pas dépasser 8 caractères.",
            'numeric'=> "Le champ %s ne doit contenir que des chiffres."
        ));
        $this->form_validation->set_rules('nomPrenomPA','Nom Prenom','required|min_length[5]');

        $this->form_validation->set_rules('numeroAffaire',"Numéro d'affaire",'required|numeric|min_length[5]|callback_numeroAffaire_check["AFFAIRE_PREMIERE_INSTANCE"]');


        if($this->form_validation->run() === FALSE){
            $this->load->view('templates/header');
            $this->load->view('templates/ajouter');
            $this->load->view('templates/footer');
        }
        else{
            $this->affaires_model->set_affaire_pi();
            redirect('affaire/home');
        }
    }

просмотр:

<div class="container">
   <h2>Ajouter une affaire</h2>
<?php echo form_open('',array('class'=>'container-fluid')); ?>
<fieldset>
    <legend>Dossier</legend>
    <div class="form-inline">
        <label class="mb-2 mr-sm-2">Nom de Dossier</label>
        <input type="text" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('nomDeDossier'); ?>"  placeholder="Nom de Dossier" name="nomDeDossier" required>
        <label class="mb-2 mr-sm-2">Numéro de Dossier</label>
        <input type="Number" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('numeroDeDossier'); ?>" placeholder="Numéro de Dossier" name="numeroDeDossier" required>
    </div>
</fieldset>
<fieldset>
    <legend>T.P.I</legend>
        <div class="form-inline">
            <label class="mb-2 mr-sm-2">N° AFF</label>
            <input type="text" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('numeroAffaire'); ?>" placeholder="Numéro d'affaire" name="numeroAffaire">
            <?php echo form_error('numeroAffaire');?>
            <label class="mb-2 mr-sm-2">Date Jugement</label>
            <input type="date" class="form-control mb-2 mr-sm-2" value="<?php echo set_value('dateJugement'); ?>"  placeholder="Date Jugement" name="dateJugement" required>
        </div>
<button type="submit" class="btn btn-primary">Ajouter</button>

Ответы [ 2 ]

0 голосов
/ 24 января 2019

Это должно работать в вашем случае:

$(window).on('beforeunload', function(){
    $("form")[0].reset();
});
0 голосов
/ 24 января 2019

form.reset() - это метод элемента DOM (не один для объекта jQuery), поэтому вам необходимо:

$("#client.frm")[0].reset();
//faster version:
$("#client")[0].reset();

Или без jQuery:

document.getElementById("client").reset();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...