我试图做一个简单的脚本,在其中对控制器进行ajax调用,并将其结果打印在div中。
AJAX
$('#search-bar-button').click(function(){
var search_data=$('#search-bar').val();
$.ajax({
url: "<?php echo base_url('search/ajax') ?>",
type: 'POST',
data: "data="+search_data,
dataType: "html",
success: function(msg) {
$('#result').html(msg);
}
});
event.preventDefault();
//return false;
});
CONTROLLER AJAX FUNCTION /application/controller/search.php
public function ajax()
{
//$this->load->library('filtri');
$data=$this->input->post('search_data');
echo "<p>result= ".$data."</p>";
}
查看
<div class="span7">
<?php echo form_open('validation/ricerca'); ?>
<?php echo form_input(array('id'=>'search-bar');?>
<?php echo form_submit(array('value'=>'Search','id'=>'search-bar-button'));?>
<?php echo form_close(); ?>
</div>
<div class="well" id="result"></div>
答案 0 :(得分:0)
请检查您的数据变量。您正在阅读'search_data'而不是'data'。 在你的控制器中,ajax函数使用$ this-&gt; input-&gt; post('data')。
答案 1 :(得分:0)
这是你可以做的事情
public function ajax()
{
//$this->load->library('filtri');
$data = $this->input->post('data');
echo "<p>result= ".$data."</p>";
}