我正在构建一个将在Codeigniter(3.0)中插入mysql数据库的表单,其中一个字段应该是发布日期。我是CI的新手,但之前曾使用过datepicker,并认为它会起作用。
从我的模板标题文件
<html>
<head>
<meta charset="utf-8">
<title>Add a new comic</title>
<link rel="stylesheet" href="http://foo.com/ci/css/newstyle.css" type="text/css" media="screen">
<link rel="stylesheet" href="http://foo.com/ci/css/style.css" type="text/css" media="screen">
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
$(function() {
$('#datepicker').datepicker('option', 'dateFormat', 'yy-mm-dd');
});
});
</script>
</head>
来自我的form.php
<div id="upload">
<?php
echo form_open_multipart('comic/createComic');
echo form_upload('userfile');
echo form_input('comic_title', 'Comic Title');
echo form_input('title_text', 'Hover Test');
?>
<input type="text" id="datepicker" title="publish_date" name="publish_date" value="">
<?php
echo form_submit('upload', 'Upload');
echo form_close();
?>
</div>
来自控制器
function createComic()
{
$this->load->model('Image_model');
if($this->input->post('upload'))
{
$this->Image_model->do_upload();
}
$data = array(
'comic_filename' => $this->upload->data('file_name'),
'comic_title' => $this->input->post('comic_title'),
'title_text' => $this->input->post('title_text'),
'publish_date' => $this->input->post('publish_date'),
);
$this->db->set('uploaded', 'NOW()', FALSE);
$this->site_model->add_comic($data);
$this->index();
}
我有一个图像模型和一个站点模型,只需运行正常工作的插件。我正在获得一个文本字段,我可以手动输入ISO格式的日期,并且插入时没有任何问题。
问题是我根本没有加载UI日期选择器。您必须手动输入日期。
我在这里缺少什么?我确信有一些我不知道的特质,或者我在语法上犯了一个简单的错误,非常感谢任何帮助。
无法获取jQuery UI datepicker来加载图形日历,以允许用户在Codeigniter平台上构建的表单中选择日期。请参阅上面的代码,让我知道我哪里出错了。
答案 0 :(得分:1)
问题在于您为初始化datepicker()
尝试将其更改为以下内容:
$(function() {
$('#datepicker').datepicker({
dateFormat: "yy-mm-dd"
});
});
在初始化日期选择器后设置选项时使用的原始格式。
$('#datepicker').datepicker( "option", "dateFormat", "yy-mm-dd" );