JQuery denilen PHP kodu çalışmıyor

3 Cevap php

Başlangıçta, ben bir. Php dosyayı aramak için AJAX işlevleri içeren bir. Js dosyası kullanılır. . Php dosyası dinamik QueryString üzerinden geçirilen belirli parametrelere dayalı bir açılan doldurmak için kod içerir.

Her şey yukarıdaki yöntemi ile çalışıyor. Ama şimdi ben sayfa yük dropdowns doldurmak istiyorum ve bunu yerine benim eski yöntemin JQuery kullanmak istiyorum. Ben aşağıdaki kodu denedim, ancak açılan doldurmuyor.

$.get("../Lib/filldropdown.php", 
                        { param1: "divMemberOf", param2: "inMemberOf", param3: "categorymaster" });

. Aşağıdaki php dosyasının kodu:

<?php
    require("dbconnection.php");
    require("dbaccess.php");

    $dropdownControlName = $_GET['DropDownControlName'];
    $query = ".....";
    dbconnection::OpenConnection();
    $result = dbaccess::GetRows($query);
?>
<select id="<?php echo $dropdownControlName; ?>" name="<?php echo $dropdownControlName; ?>">
<option>Select from the list</option>
<?php while($row=mysql_fetch_array($result))
{ ?>
    <option value="<?php echo $row[0]; ?>"><?php echo $row[1]; ?></option>

<?php } ?>
</select>

Yukarıdaki JQuery kod üç parametre geçer, ama ben yukarıdaki PHP kodu tek kullanmış unutmayın. Daha sonra iki parametre kullanmak için gidiyorum. Yukarıdaki PHP kodu mükemmel benim eski AJAX yöntemi ile çalışıyor.

3 Cevap

Sen GET kullanarak bir AJAX isteği yapıyoruz, ama aslında döndürülen HTML işlemek için bir geri çağırma işlevi ekleyerek değildir. Bu ince havada kaybolur.

Tam bir örnek için the JQuery AJAX documentation on GET göz atın.

Çağrınız bu gibi bir şey olurdu:

$.get("../Lib/filldropdown.php", 
{ param1: "divMemberOf", param2: "inMemberOf", param3: "categorymaster" },
function(data) { $('#myDivID').html(data); }

);

Sen bir geri arama işlevini eklemek gerekiyor, ya da sadece sayfanın içine PHP çağrısından sonuçları enjekte etmek istiyorum çünkü .load yöntemi daha uygun olabilir:

$("#someContainer").load("../Lib/filldropdown.php", 
                        { param1: "divMemberOf", 
                          param2: "inMemberOf", 
                          param3: "categorymaster" });

Sadece bazı DIV içine veya seçme kutusunu enjekte etmek için bir yer tutucu olmak için bir şey gerekir.

You are not specifying the key correctly for your php to work as-is. In your javascript you are creating a request like this: param1=divMemberOf&param2=inMemberOf&param3=categorymaster

I think Eğer yeni oluşturulan seçme girişi için id olarak kullanıyor beri DropDownControlName adlandırılacak bu parametrelerden birini gerekir. Büyük olasılıkla sorgu içindeki kullanıyor beri de param2 ve param3 kontrol edebilirsiniz.