AJAX çağrısından Sistem Mesajı nasıl oluşturulur


10

Ajax isteğimi geri aldığımda bir sistem mesajı görüntülemek istiyorum.

Ajax isteği doğru mesajı döndürür. Bir uyarı ile test edebilirim.

alert(result.message);
Joomla.renderMessages(result.message);

Şimdi başarı veya hata mesajını tipik bir Joomla Sistem Mesajı olarak gösterecektir. Ancak Joomla.renderMessagesçağrı hiçbir sonuç göstermiyor. Sistem mesajı sitemde görünmeyecek.

Yanlış bir şey var mı veya bunu çalıştırmak için daha fazlasını yapmam gerekiyor mu?

Yanıtlar:


6

@Bakual bahsettiği tüm şeyler doğru ama ben sadece geçen fark result.messageetmek alertve bu verilen [alert(message)][1]beklediği messagebir olmak stringveya objectbir dönüşebilen stringbu sorun olabilir.

Eğer result.messagesadece bir dizedir, o zaman uygun bir kap içinde kaydırmak gerekir, böyle bir şey:

var jmsgs = [result.message];  // You can stack multiple messages of the same type
Joomla.renderMessages({'info': jmsgs });

çözüm bu! Teşekkür!
Perino

2

JavaScript işlevi, kimliğine sahip bir kapsayıcı bulunmasına bağlıdır system-message-container. Bazı şablonlar bu kapsayıcıya sahip değildir veya yalnızca gösterilecek bir mesaj varsa. Önce Protostar ile kontrol edin ve orada çalışıp çalışmadığına bakın

Ayrıca core.js, uzantınızla gerçekten yüklediğinizden emin olmanız gerekir . Yüklü olması gerekmez, özellikle ön uçta değil. Joomla 3.3'ü kullanarak yükleyebilirsiniz JHtmlBehavior::core(), önceki sürümlerde kullanabilirsiniz JHtmlBehavior::framework().

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.