我确定这是一件非常简单的事情,我很遗憾,但我很难设置隐藏的输入值。
我的表单看起来像这样
<?php echo validation_errors(); ?>
<?php echo form_open('purchasing'); ?>
<h1>Purchasing Reports</h1>
<div class="input-group">
<input type="text" class="form-control daterange">
<input type="hidden" id="startDate" name="startDate" value="" />
<input type="hidden" id="endDate" name="endDate" value="" />
<span class="input-group-btn">
<button class="btn btn-primary" type="submit">Submit ></button>
</span>
</div>
<?php echo form_close(); ?>
我的JS喜欢这个
$( "#purchasing" ).submit(function( event ) {
event.preventDefault();
var dateArray = $( ".daterange" ).val().split(" - ");
var startDate = new Date(dateArray[0]);
var startDateFormatted = moment(startDate).add('s', 10).format();
document.getElementById("startDate").value = startDateFormatted
var endDate = new Date(dateArray[1]);
var endDateFormatted = moment(endDate).add('s', 10).format();
$( "#endDate" ).val( endDateFormatted );
});
正如您所看到的,日期范围选择器将开始日期和结束日期格式化为正确的格式,然后应该将它们传递给隐藏的表单值进行处理。如果我警告该隐藏值的值,我会得到正确的响应,但它没有传递给控制器。
正如你所看到的,我已经尝试了将值传递给输入的jQuery和Javascript版本,但似乎都没有区别。
我也经历了this post中的所有答案,没有运气
答案 0 :(得分:2)
您的表单没有ID。
echo form_open('purchasing', 'id="purchasing"');