Ich bin nicht sehr vertraut mit Ajax in Codeigniter. Ich möchte einfach den Vornamen und den Nachnamen anzeigen, den ich gerade in das div mit id (result) eingegeben habe. Aber wenn ich auf "Senden" klicke, wird die Seite nur neu geladen. Was ist falsch ? Danke im Voraus. Gut, das ist meine Ansicht Datei employee.php
Seite wird nach dem Senden in Codeigniter während der Verwendung von Ajax neu geladen
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<div class="box">
<h1><?php echo lang('employee:insert'); ?></h1>
<div class="form_box">
<?php
echo form_open(); //form open
echo form_label('First Name: ', 'fn');
$data = array('name' => 'first_name','type' => 'text', 'id' =>'first_name');
echo form_input($data)."<br>";
echo form_label('Last Name: ', 'ln');
$data = array('name' => 'last_name','type' => 'text', 'id' => 'last_name');
echo form_input($data)."<br>";
$data = array('type' => 'submit', 'value' => 'Submit', 'id' => 'submit');
echo form_submit($data);
echo form_close(); // form close
?>
</div>
</div>
<div id="result">
here
</div>
<script type="text/javascript">
$(document).ready(function() {
$("#submit").click(function(event) {
event.preventDefault();
var first_name: $('input#first_name').val();
$.ajax({
type: "POST",
url: "<?php echo site_url('admin/employee/insert'); ?>",
dataType: 'text',
data: {name: first_name},
success: function(data) {
if(res) {
$("div#result").html(res.un);
}
}
});
});
});
</script>
Dies ist mein Controller Datei admin.php
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Admin extends Admin_Controller {
public function __construct() {
parent::__construct();
$this->lang->load("employee");
$this->load->model('emp_model');
$this->template
->append_css("module::admin.css")
->append_js("module::admin.js")
->append_js("module::jquery-2.2.3.min.js");
}
public function index() {
$this->template->build("admin/employee");
}
public function insert() {
$data = array(
'first_name' => $this->input->post('first_name'),
'last_name' => $this->input->post('last_name')
);
echo json_encode($data);
}
}
Eingabe-Typ ändern Eingabe-Eingabe-Taste oder verwenden .submit statt .click – Poria
Die Seite neu laden gestoppt, aber ich bin immer noch nirgends. Auch nach dem Klicken auf den Submit-Button passiert nichts. Die Ajax-Funktion funktioniert nicht. –
Wird dein Ajax gefeuert? Siehst du irgendwelche Fehler in der Konsole? – Poria