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

使用php codeigniter将计算出的javascript变量值传递给文本字段,javascript,php,jquery,codeigniter,Javascript,Php,Jquery,Codeigniter,我试图将javascriptvariavle值提取到文本字段,但我得到一个错误 [对象] 我试图计算两个日期之间的差异,并希望在文本字段中显示,然后将其保存在数据库中 当我在span选项卡中显示结果时,它会给出正确的结果。 这是我的代码:查看文件 <div class="col-md-3"> <div class="form-group"> <div class="col-md-11">

我试图将
javascript
variavle值提取到文本字段,但我得到一个错误

[对象]

我试图计算两个日期之间的差异,并希望在文本字段中显示,然后将其保存在数据库中

当我在span选项卡中显示结果时,它会给出正确的结果。

这是我的代码:查看文件

<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>

续约天数:天数
注意:在上面的代码中,我只是注释文本框代码

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>

$('#datepicker1')。datepicker();
$('#datepicker8')。datepicker();
$('#datepicker8')。更改(函数(){
var diff=$('#日期选择器1')。日期选择器(“getDate”)-$('#日期选择器8')。日期选择器(“getDate”);
$(#diff')。文本(diff/(1000*60*60*24)*-1);
});
此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>

$('#datepicker1')。datepicker();
$('#datepicker8')。datepicker();
$('#datepicker8')。更改(函数(){
var diff=$('#日期选择器1')。日期选择器(“getDate”)-$('#日期选择器8')。日期选择器(“getDate”);
var结果=$('#diff')。文本(diff/(1000*60*60*24)*-1);
document.getElementById(“diff”).value=结果;
});
欢迎任何形式的帮助,提前谢谢

更新问题:

<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>
这是我的密码:

<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>

var date1=新日期();
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')。更改(函数(){
var gasDiff=$('#日期选择器5')。日期选择器(“getDate”)-$('#日期选择器4')。日期选择器(“getDate”);
var结果=gasDiff/(1000*60*60*24)*-1;
document.getElementById(“gasDiff”).value=结果;
});
输出:


在上图中,结果文本框为空。

在此处更新结果变量,然后重试

 <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>    

$('#datepicker1')。datepicker();
$('#datepicker8')。datepicker();
$('#datepicker8')。更改(函数(){
var diff=$('#日期选择器1')。日期选择器(“getDate”)-$('#日期选择器8')。日期选择器(“getDate”);
var结果=差异/(1000*60*60*24)*-1;
document.getElementById(“diff”).value=结果;
});

在此处更新结果变量,然后重试

 <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>    

$('#datepicker1')。datepicker();
$('#datepicker8')。datepicker();
$('#datepicker8')。更改(函数(){
var diff=$('#日期选择器1')。日期选择器(“getDate”)-$('#日期选择器8')。日期选择器(“getDate”);
var结果=差异/(1000*60*60*24)*-1;
document.getElementById(“diff”).value=结果;
});

要添加月份到日期,请使用date.js插件。 请参考datejs并使用下面的添加月份,如下所示 和叛逆者的改变

       $("#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);
        });

要添加月份到日期,请使用date.js插件。 请参考datejs并使用下面的添加月份,如下所示 和叛逆者的改变

       $("#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);
        });

嘿,谢谢,它起作用了。请你解释一下代码好吗?当你这样做时,$(#diff').text(diff/(1000*60*60*24)*-1);您正在进行计算,并试图设置为文本框val,然后文本框对象被指定给结果变量,并将其重新指定给文本框。在这里,您使用“文本”来输入不正确的计算值,而不是创建结果变量,您只需执行以下操作:$('#diff').val(diff/(1000*60*60*24)*-1);如果我们从第一个日期选择器中选择日期,是否可以在第二个日期选择器中生成日期。例如,如果我在第一个日期选择器中选择2017年11月22日,那么第二个日期选择器将显示一个月后的日期,即2017年12月22日。是的,请参考此链接。它给出了正确的结果,但它不会在文本字段中显示计算结果。嘿,谢谢,它工作了。请你解释一下代码好吗?当你这样做时,$(#diff').text(diff/(1000*60*60*24)*-1);您正在进行计算,并试图设置为文本框val,然后文本框对象被指定给结果变量,并将其重新指定给文本框。在这里,您使用“文本”来输入不正确的计算值,而不是创建结果变量,您只需执行以下操作:$('#diff').val(diff/(1000*60*60*24)*-1);如果我们从第一个日期选择器中选择日期,是否可以在第二个日期选择器中生成日期。例如,如果我在第一个日期选择器中选择2017年11月22日,那么第二个日期选择器将显示一个月后的日期,即2017年12月22日。是的,请参考此链接。它给出了正确的结果,但不会在文本字段中显示计算结果。