简体   繁体   English

使用php codeigniter将计算出的javascript变量值传递到文本字段

[英]Passing calculated javascript variable value to text field using php codeigniter

I'm trying to fetch javascript variavle value to text field, but I'm getting an error. 我正在尝试将javascript variavle值提取到文本字段,但出现错误。

[object Object] [对象对象]

在此处输入图片说明

I'm trying to calculate difference between two dates and want to show that in text field and after that want to save it in database. 我正在尝试计算两个日期之间的差异,并希望在文本字段中显示出来,然后再将其保存到数据库中。

When I'm displaying the result in span tab and it gives me proper result. 当我在“范围”选项卡中显示结果时,它给了我正确的结果。 在此处输入图片说明

Here is my code: View file 这是我的代码:查看文件

<div class="col-md-3">
                <div class="form-group">
                    <div class="col-md-11"> 
                        <div class='input-group date'  name="exam_date"  id='from_date' data-date="" data-date-format="yyyy-mm-dd">
                            <input type='text' class="form-control" id="datepicker1" id="yes" name="property_gas_issue_date" placeholder="Issue Date " />
                            <span class="input-group-addon">
                                <span class="glyphicon glyphicon-calendar"></span>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="col-md-3">
                <div class="form-group">
                    <div class="col-md-11">
                        <div class='input-group date'  name="exam_date"  id='from_date' data-date="" data-date-format="yyyy-mm-dd">
                            <input type="text" class="form-control" id="datepicker8" name="property_gas_expiry_date" placeholder="Gas expiry date"/>
                            <span class="input-group-addon">
                                <span class="glyphicon glyphicon-calendar"></span>
                            </span>
                        </div>
                    </div>
                </div>
            </div>
            <div class="col-md-3">
                <div class="form-group">
                    <div class="col-md-11">
                        <!-- <input type="text" id="diff" name="property_gas_certificate_duration_days" placeholder="duration in days" value="" class="form-control"> -->
                        <strong><span> Renewal days count:</span> <span id='diff'> - </span> <span> Days</span></strong>
                    </div>
                </div>
            </div>

Note: In above code I just comment textbox code. 注意:在上面的代码中,我只是注释文本框代码。

JS code: JS代码:

<script>
  $('#datepicker1').datepicker();
  $('#datepicker8').datepicker();

  $('#datepicker8').change(function () {
      var diff = $('#datepicker1').datepicker("getDate") - $('#datepicker8').datepicker("getDate");
      $('#diff').text(diff / (1000 * 60 * 60 * 24) * -1);
  });
</script>

This JS code for textbox field: 文本框字段的以下JS代码:

<script>
  $('#datepicker1').datepicker();
  $('#datepicker8').datepicker();

  $('#datepicker8').change(function () {
      var diff = $('#datepicker1').datepicker("getDate") - $('#datepicker8').datepicker("getDate");
      var result = $('#diff').text(diff / (1000 * 60 * 60 * 24) * -1);

      document.getElementById("diff").value = result;
  });
</script>

Any kind of help is welcome, thanks in advance. 谢谢您的任何帮助。

Updated question: 更新的问题:

here is my code: 这是我的代码:

<script>

  var date1 = new Date();
  date1.setMonth(date1.getMonth() + 12);
  $('#datepicker4').datepicker("setDate", new Date());
  $('#datepicker5').datepicker("setDate", date1);

  //$('#datepicker4').datepicker();
  $("#datepicker4").datepicker({ onSelect: function(dateText) { var dateofDatePicker1 = dateText ;
  $('#datepicker5').trigger('change'); } });

  $('#datepicker5').datepicker();
  $('#datepicker5').change(function () {
      var gasDiff= $('#datepicker5').datepicker("getDate") - $('#datepicker4').datepicker("getDate");
      var result = gasDiff / (1000 * 60 * 60 * 24) * -1;

      document.getElementById("gasDiff").value = result;
  });
</script>

output: 输出: 在此处输入图片说明

In above picture the result textbox is empty. 在上图中,结果文本框为空。

Update result variable in here, try it 在这里更新结果变量,尝试一下

 <script>
    $('#datepicker1').datepicker();
    $('#datepicker8').datepicker();

    $('#datepicker8').change(function () {
        var diff = $('#datepicker1').datepicker("getDate") - $('#datepicker8').datepicker("getDate");
        var result =  diff / (1000 * 60 * 60 * 24) * -1 ;

        document.getElementById("diff").value = result;
    });
</script>    

To Add month to date use date.js plugin. 要添加月份,请使用date.js插件。 Please reference datejs and use below to add month as below and traigger change 请参考datejs并在下面使用以添加以下月份并更改traigger

       $("#datepicker4").datepicker({
            onSelect: function (dateText) {
                var nextMonth = new Date(dateText).add(1).month().toString('MM/dd/yyyy');
                $('#datepicker5').val(nextMonth);
                $('#datepicker5').trigger('change');
            }
        });
        $('#datepicker5').datepicker();
        $('#datepicker5').change(function () {
              var diff = $('#datepicker4').datepicker("getDate") - $('#datepicker5').datepicker("getDate");
              $('#diff').val(diff / (1000 * 60 * 60 * 24) * -1);
        });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM