$ Içeride JQuery değişken kullanarak (php)

2 Cevap php

i gibi bir ajax yazı yaşıyorum

  var ht = $.ajax({
   type: "GET",
    url: "http://localhost/FormBuilder/index.php/forms/viewChoices/"+attribute_id,
    async: false
   }).responseText;

      var myObject = eval('(' + ht + ')');


   var data = myObject;var j=0;

 alert(data.choices);//alerts the choices as object

   $(""+<?php echo $form->input('field', array('type' => 'radio','legend'=>$r['Attribute']['label'],'separator' => '--separator--',
		    'options' => array() ));?>+"").appendTo("#"+<?=$r['Attribute']['id'];?>);

I bana efsane correclty gösteren jQuery içinde bir radyo düğmesi oluşturmak duyuyorum ama yapmak için nasıl) => array ('seçenek' olarak yani PHP dizi içindeki bir JQuery değişken data.choices kullanmaya çalışıyorum son satırında yani??

2 Cevap

Istemci tarafı dili (JavaScript / jQuery) ile sunucu tarafı dili (PHP) kafa karıştırıcıdır. Sunucu tamamen JavaScript kodu yok sayar PHP kodu işlediğinde, bunun için sadece normal bir metin bulunuyor. Isteği işlendi ve müşteri göndermek daha sonra sonra, onun tarayıcı JavaScript yorumlamak başlar ama bu sefer (tepki PHP kodu oluşturulan bir HTML çünkü) PHP değişkenlerine erişimi yok.

Ben size kod PHP tarafından işlenecek gerekiyorsa JavaScript onu aramak ve daha sonra sonuçları işlemek için AJAX kullanmanız gerekir, ben tam olarak soruyu anlamadım sanmıyorum. Site içeriğini oluştururken, bu radyo düğmesini oluşturmak istiyorsanız, sadece PHP değişkenleri itimat ve düğme oluşturmak için onları kullanmalısınız.

Sadece sizin kod hatları için netleştirmek için:

$(""+<?php echo $form->input('field', 
                             array('type' => 'radio',
                                   'legend'=>$r['Attribute']['label'],
                                   'separator' => '--separator--',                    
                                   'options' => array() ));?>
  +"").appendTo("#"+<?=$r['Attribute']['id'];?>);

PHP sırasıyla "Metin1" ve "Metin2" out yankılandı eğer. Eğer olurdu

$("" + text1 + "").appendTo("#"+text2);

Bu değişken isimleri değil, çünkü başarısız olur. Tarayıcısına yüklenirken tam olarak ne görmek için sayfada bir görünüm-kaynak yapın.

Ayrıca, gizli bir değişkene PHP değerini ayarlama ve JavaScript o başvuran düşünün. Sunucu ve istemci tarafında kod karıştırma genellikle çok kafa karıştırıcı. Olarak bilinen bir şey tag soup.