Quoting in php does not work in javascript

I want to add a date input field that is auto-populated one month later than the current month. but I am having problems switching to javascript. Please help me

<script type="text/javascript">
    $(document).ready(function() {
        var max_fields      = 10; //maximum input boxes allowed
        var wrapper         = $(".input_fields_wrap"); //Fields wrapper
        var add_button      = $(".add_field_button"); //Add button ID

        <?php for($xd=1;$xd<=10;$xd++) { ?>

        var x = 3; //initlal text box count
        $(add_button).click(function(e){ //on add input button click
            e.preventDefault();
            if(x <= max_fields){ //max input box allowed
                $(wrapper).append('<div><div class="col-xs-4"><label>Cicilan Uang Muka/Tunai Ke-' + x + '</label></div><div class="col-xs-4"><label>Nilai (Rupiah)</label><input type="text" name="nilai_rp_ke_2_sd_n[]" class="form-control"/></div><div class="col-xs-3"><label>Tanggal Jatuh Tempo</label><input type="text" name="jth_tempo_cicilan_ke_2_sd_n[]" class="form-control pull-right" value="<?php $d=strtotime("+$xd Months", $cicilan_ke2); echo date("d/m/y", $d); $xd++; ?>" readonly="readonly"/></div><a href="#" class="remove_field">Remove</a></div>'); //add input box
                x++; //text box increment
            }
        });

        <?php } ?>

        $(wrapper).on("click",".remove_field", function(e){ //user click on remove text
            e.preventDefault(); $(this).parent('div').remove(); x--;
        })
    });
</script>

      

+3


source to share


1 answer


Of course it doesn't work in javascript because php and javascript work in different directions. Php server side and JavaScript side.

Except you can pass this to your view using php as a return variable from some of your PHP method



public function yourFuncName(){
    ...

    $returnVal = '<script type="text/javascript">
                     $(document).ready(function() {
                         ...
                         var xdMin = '. @$xdMin .';
                         var xdMax = '. @$xdMax .';
                         var xd = 0;

                         for(xd=xdMin; xd<xdMax; xd++){
                             ...
                             ...
                         }
                     }
                  </script>';
    ...
    return @$returnVal;
}

      

Hope this works for you.

0


source







All Articles