我控制器从数据库中获得模型上传数据,向他们查看。鉴于我做foreach循环来绘制div到每个实体。每个div都有一个表单元素来评估它的实体。笨 - 刷新DIV后提交表单
控制器:
function index(){
$data['main_content'] = 'list';
$data['entities'] = $this->database_model->getEntities();
$this->load->view('template', $data);
}
function postRate(){
$rate = array(
'entity_id' => $this->input->post('entity_id'),
'owner_id' => $this->input->post('owner_id'),
'value' => $this->input->post('value')
);
$this->database_model->persistRate($rate);
$this->index();
}
型号:
function getEntities(){
return $this->db->get('entity')->result();
}
function persistRate($rate){
return $this->db->insert('rate', $rate);
}
查看:
<?php foreach($entities as $entity) : ?>
<div class="entity">
<?php echo form_open('entities/postRate/', $attr); ?>
<?php echo form_hidden('entity_id', $entity->id); ?>
<?php echo form_hidden('owner_id', $userid); ?>
<?php echo form_hidden('value', 1); ?>
<?php echo form_submit('submit', '+1'); ?>
<?php echo form_close(); ?>
</div>
<?php endforeach; ?>
排名后这种情况下,整个页面将重新加载,但我想只刷新该div表单被提交的地方。我知道JavaScript或jQuery的可以做到这一点,.. UPDATE ..但我不知道他们的逻辑,他们怎么会知道确切的股利或实际实体的确切(更新)数据?我可以从数据库中得到它吗?我只是与js/jquery/ajax混淆。
查找到AJAX。无论您是否使用CodeIgniter都没关系,它确实与此无关。 – Styxxy
这里的逻辑是下一个,在视图上提交后,控制器调用模型并返回后,调用index方法再次获取数据并重新加载页面。对?我明白了,但是ajax的逻辑是什么?我看不到或者我不知道。 – Victor