我是ajax的新手,我正在读书。我搜索但我无法得到解决方案。我想从我的数据库中选择所有国家,并希望在表格中回显结果。我得到了结果,但我不知道如何在视野中回应它。有人请帮帮我。提前谢谢。
我的控制器Ajax.php
function index()
{
$this->load->view('Ajax/Ajax_view');
}
function Get_specific()
{
$name=$this->input->post('name');
$data['country']=$this->Ajax_m->select("countries");
echo json_encode($data);
$this->load->view('Ajax_view',json_encode($data));
}
我的模型Ajax_m.php
function select($table){
$query=$this->db->get($table);
return $query->result();
}
我的视图Ajax_view.php
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<script type="text/javascript">
$(document).ready(function(){
$('#data').hide();
$('#sub').click(function(event){
event.preventDefault();
var name=$('#name').val();
$.ajax({
type: "POST",
url : "<?php echo base_url(); ?>" + "index.php/Ajax/Get_specific/",
datatype : 'html',
data : { name: name },
success:function(res){
$('#data').show();
alert('done')
}
});
});
});
</script>
</head>
<body>
<?php echo form_open('Ajax/insert'); ?>
<input type="text" name="name" id="name" value=""><br>
<input type="submit" name="sub" id="sub"><br>
<?php echo form_close(); ?>
<div id="data">
<table>
<tr>
<th>name</th>
<th>Delete</th>
</tr>
<?php
if(isset($query)):
foreach ($query as $row): ?>
<tr>
<td></td>
<td>Delete</td>
</tr>
<?php endforeach;
endif;?>
</table>
</div>
</body>
答案 0 :(得分:1)
$.ajax({
type: "POST",
url : "<?php echo base_url(); ?>" + "index.php/Ajax/Get_specific/",
datatype : 'html',
data : { name: name },
success:function(res){
$('#data').html(res).show();
alert('done')
}
很难确切地知道你想要什么,但是我所做的一切都是在ajax调用的成功中,在显示之前将res
添加到元素中。
编辑:如果您不想丢失元素中已有的内容,则可以始终使用.append()
而不是.html()