【发布时间】:2015-05-20 19:24:23
【问题描述】:
我是来自比利时的学生,对于学校的一个项目,我必须在 codeigniter 中制作一个包含事件的日历。我已经制作了一些引导模式来制作表单以添加新事件或编辑现有事件。添加功能已经可以使用,但现在我在编辑表单上遇到了一些问题。我想用数据库中的现有数据填充我的表单。我的老师快速向我展示了如何使用 jquery 做到这一点。
这是我的主要观点:
<script type="text/javascript">
$('#editButton').click(function() {
day_data = $(this).find('#eventp').html();
$.get('http://localhost/TEDXPXL/mycal/editEvent/'+encodeURI(day_data), function(data){$('#editNaam').val(data); $('#editBeginuur').val()});
});
</script>
<div class="form-group">
<label for="editNaam" class="col-sm-2 control-label">Name:</label>
<div class="col-sm-10">
<input type="text" maxlength="255" name="editNaam" class="required col-sm-2 col-lg-10" id="editNaam" />
</div>
</div>
<div class="form-group">
<label for="editBeginuur" class="col-sm-2 control-label">Start time:</label>
<div class="col-sm-10">
<input type="time" name="editBeginuur" class="required col-sm-2 col-lg-3" id="editBeginuur"/>
</div>
</div>
day_data 将找到将出现在我的引导模式标题中的事件名称,因此我可以在 where 子句中使用它从数据库中获取数据。
这是我的控制器功能
function editEvent() {
$naam = urldecode(func_get_args()[0]);
$this->load->model("mycal_model");
$data = array();
$data['naam'] = $this->mycal_model->fill_edit_form($naam)["naam"];
$data['beginuur'] = $this->mycal_model->fill_edit_form($naam)["beginuur"];
$data['einduur'] = $this->mycal_model->fill_edit_form($naam)["einduur"];
$data['commentaar'] = $this->mycal_model->fill_edit_form($naam)["commentaar"];
$this->load->view("fillform.php", $data);
}
这是填充表单视图:
<?php
print $naam;
print $beginuur;
print $einduur;
print $commentaar;
?>
这 4 个元素在我的主视图中的 $.get 形式的函数中作为“数据”返回。但是当我从“editNaam”元素中设置值时,它看起来像“eventNameeventStartTimeeventEndTimeeventComment”,这当然是正常的。 但是如何将“数据”拆分为 4 个元素,以便 editNaam 只有事件名称、editBeginuur 事件开始时间等?
【问题讨论】:
标签: javascript php jquery twitter-bootstrap codeigniter