3

I am currently working in Open cart frame work. In that Open Cart, Dynamic forms are present.In that Dynamic form, so the script also dynamic, I have to calculate when the form data changes. during this i am getting some problem. I am getting select box option values in dynamically....

foreach ($options as $option) {  $initiates_f=$initiates_f+1; ?>    
       <?php if ($option['type'] == 'select'){ ?>   

            var a_<?php echo $initiates_f;?>= document.getElementById("option[<?php echo $option['product_option_id']; ?>]").value;
            var spl_<?php echo $initiates_f;?>  = a_<?php echo $initiates_f;?>.split("_");
            var cr_<?php echo $initiates_f;?>   = spl_<?php echo $initiates_f;?>[1];
            var operator3_<?php echo $initiates_f;?>    = cr_<?php echo $initiates_f;?>.split("[");
            var symbol<?php echo $initiates_f;?> = operator3_<?php echo $initiates_f;?>[0];
            var dtt_<?php echo $initiates_f;?> =  operator3_<?php echo $initiates_f;?>[1];
            var myarr_<?php echo $initiates_f;?>        = dtt_<?php echo $initiates_f;?>.split("$");
            var symbol_st_<?php echo $initiates_f;?>    = myarr_<?php echo $initiates_f;?>[1];
            var split_value_<?php echo $initiates_f;?> = myarr_<?php echo $initiates_f;?>[1];
            var final_value_<?php echo $initiates_f;?>  =symbol_st_<?php echo $initiates_f;?>.split(".");
            var Final_price<?php echo $initiates_f;?>   =final_value_<?php echo $initiates_f;?>[0];


    <?php  }    } ?>

further, I am assigning that Final_price value into some variable outside for loop.Here this script coding...

    var total_amount=0;
                    for(var i=1; i<=j; i++)
                    {alert('test');

                             final_prices=("Final_price"+i).value;
                            alert(final_prices);
alert(symbol_prices.value);*/
                            if(isNumber(final_prices)){
                                alert("number");
                                /*if(symbol_prices =='+') {
                                        alert("plus");
                                 var total_amount+=parseInt(original_prices)+parseInt(final_prices);
                                 calculated_price_element.innerHTML=total_amount;
                                 alert(total_amount);
                            } else if(symbol_prices =='-') {
                                    alert("minus");
                                 var total_amount+=parseInt(original_prices)-parseInt(final_prices);
                                 calculated_price_element.innerHTML=total_amount;
                                  alert(total_amount);
                            }*/
                     //alert('test');

                    }

                }

In that coding final_prices=("Final_price"+i).value; does not return value from that assigned variable,How to get this value..please solve it..I am struggling for 2 days.. any other alternative solutions for this....please guide me...

2
  • 3
    Javascript works on the client side (in this case) - so we need to see the rendered script, not your <?php echo ... ?> tags. Commented Mar 21, 2013 at 12:35
  • 3
    I'd recommend using an array or object for that. Commented Mar 21, 2013 at 12:35

1 Answer 1

3

I got solutions for this....please follow this its more useful for other... I concluded with php and java-script...

 foreach ($options as $option) {  $initiates_f=$initiates_f+1; ?>   
       <?php if ($option['type'] == 'select'){ ?>   

            var a_<?php echo $initiates_f;?>= document.getElementById("option[<?php echo $option['product_option_id']; ?>]").value;
            var spl_<?php echo $initiates_f;?>  = a_<?php echo $initiates_f;?>.split("_");
            var cr_<?php echo $initiates_f;?>   = spl_<?php echo $initiates_f;?>[1];
            var operator3_<?php echo $initiates_f;?>    = cr_<?php echo $initiates_f;?>.split("[");
            var symbol<?php echo $initiates_f;?> = operator3_<?php echo $initiates_f;?>[0];
            var dtt_<?php echo $initiates_f;?> =  operator3_<?php echo $initiates_f;?>[1];
            var myarr_<?php echo $initiates_f;?>        = dtt_<?php echo $initiates_f;?>.split("$");
            var symbol_st_<?php echo $initiates_f;?>    = myarr_<?php echo $initiates_f;?>[1];
            var split_value_<?php echo $initiates_f;?> = myarr_<?php echo $initiates_f;?>[1];
            var final_value_<?php echo $initiates_f;?>  =symbol_st_<?php echo $initiates_f;?>.split(".");
            var Final_price<?php echo $initiates_f;?>   =final_value_<?php echo $initiates_f;?>[0];


    <?php  }    } 

    echo 'var final_prices=0;';

       $initiates_f=0;
       foreach ($options as $option) {  $initiates_f=$initiates_f+1; 
       if ($option['type'] == 'select')
    {
    echo 'final_prices=parseInt(Final_price'.$initiates_f.');';
        echo    "total_amount+=parseInt(final_prices);
                    // alert(total_amount);
                 calculated_price_element.innerHTML=total_amount;";

     }
     }
    ?>

Thank u...

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.