Lykos22 Δημοσ. 10 Ιουλίου 2013 Δημοσ. 10 Ιουλίου 2013 Θα ήθελα μία μικρή βοήθεια. Έχω δημιουργήσει μια σελίδα/controller όπου μπορώ να κάνω επεξεργασία μιας σελίδας, μέσω μιας φόρμας και αυτό που θέλω είναι το validation των πεδίων να γίνεται με jQuery - Ajax εαν είναι ενεργό το Javascript στον browser, αλλιώς να γίνεται η επεξεργασία κανονικά. Εαν υπάρχουν σφάλματα στο validation να εμφανίζονται το κάθε ένα δίπλα στο αντίστοιχο πεδίο, αν γίνεται (αλλιώς πάνω από τη φόρμα όλα τα λάθη σαν λίστα). Εδώ είναι Controller μου public function edit($id){ ..... //ορισμός rules των πεδίων $rules = $this->page_model->rules; $this->form_validation->set_rules($rules); // do validation if ($this->form_validation->run() === TRUE) { $data = $this->page_model->array_from_post(array('parent_id','title','slug','body','template')); $this->page_model->save($data, $id); redirect('admin/page'); } //load view $this->data['subview'] = 'admin/page/edit'; $this->load->view('admin/edit_page', $this->data); } ,εδώ το είναι το view μου <?php echo validation_errors(); ?> <?php echo form_open(); ?> <table> <tr> <td>Title:</td> <td><?php echo form_input('title', set_value('title', $page->title)); ?></td><?php echo form_error('title'); ?> </tr> <tr> <td>Slug:</td> <td><?php echo form_input('slug', set_value('slug', $page->slug)); ?></td><?php echo form_error('slug'); ?> </tr> <tr> <td>Body:</td><br /> <td><?php echo form_textarea('body', set_value('body', $page->body), 'class="tinymce"'); ?></td><?php echo form_error('body'); ?> </tr> και εδώ το jquery script $(document).ready(function () { $('form.ajax-form').on('submit', function() { var obj = $(this), // (*) references the current object/form each time url = obj.attr('action'), method = obj.attr('method'), data = {}; obj.find('[name]').each(function(index, value) { // console.log(value); var obj = $(this), name = obj.attr('name'), value = obj.val(); data[name] = value; }); $.ajax({ // see the (*) url: url, type: method, data: data, success: function(response) { // console.log(response); // $("#content").html(data); // πλαίσιο errors πάνω από τη φόρμα } }).error(function() { // show errors }).complete(function() { // alert }); // console.log('Trigger'); return false; //disable refresh }); });
parser Δημοσ. 12 Ιουλίου 2013 Δημοσ. 12 Ιουλίου 2013 Απλά πρεπει να διαβάσεις το form validation class του CI, αλλα αυτο το άρθο θα σε βοηθήσει άμεσα.http://gazpo.com/2011/07/codeigniter-jquery-form-validation/
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα