2016-12-08 3 views
0

Ich möchte PHP-Code in meinem jQuery append() Funktion hinzufügen.PHP-Code innerhalb Jquery append() -Funktion

Ich habe den folgenden Code versucht, aber es funktioniert nicht. Ich denke, ich vermisse etwas.

<script type="text/javascript"> 
$(function() { 
     $("#addMore").click(function(e) { 
     e.preventDefault(); 
     $("#fieldList").append("<tr><td><label><?php echo get_phrase('select_item');?></label><select name='item[]' class='form-control' > <option value=''><?php echo get_phrase('select_item');?></option><?php $categories = $this->db->get_where('item', array('category1' => 'STATIONARY'))->result_array(); foreach ($categories as $row):?><option value='<?php echo $row['componentId'];?>'><?php echo $row['itemName'];?></option> 
       <?php endforeach;?></select></td><td><label><?php echo get_phrase('amount ');?></label><input type='text' name='amount[]' class='form-control'></td></tr>"); 

     }); 
}); 
</script> 
+1

Was ist das Problem? Haben Sie Fehler in der Konsole? –

+0

Ich suggest du überdenkst dein Design. Entkommen Sie auch, sonst sind Sie anfällig für XSS-Hacks. –

+0

lassen Sie eine Minute für den Tod von serverside/clientside code :( – madalinivascu

Antwort

0

Ihre Datenquelle ist höchstwahrscheinlich nicht zugänglich. Versuchen Sie, Ihre Datenquelle über Ihre page.php zu ziehen. Sie können Ihre Seite ähnlich wie im folgenden Beispiel organisieren.

<?php 

function getProduct($id) { 
    $products = [ 
     '1' => [ 
      'name' => 'product1', 
      'price' => 'price1', 
     ], 
     '2' => [ 
      'name' => 'product2', 
      'price' => 'price2', 
     ], 
    ]; 

    return $products[$id]; 
} 

?> 

<script type="text/javascript"> 
    console.log('<?= getProduct(1)['name']; ?>'); 
    console.log('<?= getProduct(1)['price']; ?>'); 
</script>