将值传递给隐藏字段并提交给CodeIgniter

时间:2014-06-24 15:37:28

标签: javascript php jquery codeigniter

我确定这是一件非常简单的事情,我很遗憾,但我很难设置隐藏的输入值。

我的表单看起来像这样

        <?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中的所有答案,没有运气

1 个答案:

答案 0 :(得分:2)

您的表单没有ID。

echo form_open('purchasing', 'id="purchasing"');