2012-03-16 12 views
5

İstemciler projelerimi gösteren bir sayfa yapıyorum. Veritabanında, her proje kaydında, projelerin hangi kategoriye ve sınıfa ait olduğunu gösteren bir boole bayrağı bulunur.ajax işleviyle kullanılmak üzere ColdFusion sorgusunun javascript dizisini oluşturun

Proje kategorileri; planning, landscape, environmental. Ve sınıflar; industrial, government, education, residential. ..

SELECT project_id, name, location, description, planning, landscape 
     , environment, industrial, government, education, residential 
FROM projects 
WHERE planning = 1 and 
     industrial = 1 

ve ilk projesini görüntüler: kullanıcı bir "endüstriyel" uygulaması için "planlama" projeleri görmek istediğinde

, ben URL parametrelerini sayfa yüklendiğinde kullanarak buna göre veritabanını sorgulamak sonuç sayfada ayarlanır. Ben diğer sınıflara bağlantılar vardır proje görüntüsünün üzerinde biraz yardım

gereken yere Burada

bu. Ayrıca, seçilen kategori/sınıftaki diğer projeler varsa, industrial sınıfında olan planning kategorisinde sorgu daha fazla proje döndürürse, "Üçten biri - sonraki projeye bakın" yazan bir bağlantı vardır. Bir kullanıcı, .load() veya .ajax() aracılığıyla belirtilen bağlantılardan herhangi birini tıkladığında sayfaya başka bir proje yüklemek için ajax işlevi kullanmak istiyorum. Proje kimliğini sorgudan döndürerek sınıfta nasıl saklayabilirim, böylece ajax çağrısı ile daha sonra sayfaya bağlantı üzerinden erişebilirim?

Çalışmanın javascript/jQuery ajax bölümüne aşinayım - sorun yok. Bilgiye erişmek için sayfadaki bilgilerin nasıl saklanacağından emin değilim.

+2

Daha kod örneğini sağlamalıdır. Sana yardım etmeyi çok isterim. –

+0

Sanırım bunu silmem gerek çünkü farklı bir yöne gideceğim. Tam bir javascript dizisinin iyi düşünülmüş bir çözüm olduğunu düşünmüyorum. ColdFusion uygulamasında veya oturum kapsamımdaki dizileri nasıl oluşturacağımı bulmalı ve onlara bu şekilde erişmeliyim ... – Ofeargall

+0

Soruyu veya yanıtı veya yorumları silmeyin. Sadece neden farklı bir rotaya gitmeyi seçtiğini açıkla, eğer yapmayı seçtiğin buysa. –

cevap

1

Sizden daha fazla kod girmeden hangi verileri girmeniz gerektiğini tam olarak söylemek zor.

<a data-project="#project_id#">#name#</a> 

bu erişmek için, sadece bunu: Böyle bağlantılarınızı çıkışı ve kullanan mikro düşündüren ediyorum

$("a").click(function(e) { 
    e.preventDefault(); 
    var project_id = $(this).data("project"); 
    // You could load in your new data here 
}); 
+0

Kısa bir kod örneği alacağım. Sanırım beni doğru yolda buldun .. – Ofeargall

+0

Zarif degredasyon kullanmalısın. Kullanıcının Javascript özelliği etkin değilse (veya Noscript gibi bir şey kullanıyorsa), sayfanızın tamamen kırılmasını istemezsiniz. Sadece href'i bilgileri görüntüleyen gerçek bir sayfayla doldurun, ancak Ajax yüklemesi gerçekleştirmek için tıklama eylemini geçersiz kılan bir tıklama işleyicisi ekleyin. – Josh

İlgili konular