Ich versuche, den Titel einer converse.js Chat-Box zu ändern, die beim Senden einer neuen Nachricht geöffnet wird.Versucht, Conversejs Chatfenster Titeltext über Jquery zu ändern
Ich habe die ID des Popup-Chat-Fensters in einer Variablen chatbox_id
gespeichert, und ich versuche, jquery innerhalb einer Ajax-Erfolgsfunktion zu verwenden, um diese Variable zu de-referenzieren und den "Chat-Titel" festzulegen Textfeld, aber die Syntax ich habe, ist nicht korrekt:
$('#' + charbox_id + ' chat-title').text(data);
zusammen mit
$('#' + charbox_id).children('chat-title').text(data);
:
converse.plugins.add('name_lookup', {
initialize: function() {
var _converse = this._converse;
_converse.on('pluginsInitialized', function() {
_converse.on('chatBoxInitialized', function (chatbox) {
var title = chatbox.model.attributes.fullname;
var chatbox_id = chatbox.model.attributes.box_id;
var data;
$.ajax({
type: "POST",
url: 'lookup.php',
async: false,
data: "number=" + num_title[1],
success: function(data, status, xhr) {
chatbox.model.attributes.fullname = data;
$('#' + chatbox_id).children('chat-title').text(data);
}
});
ich andere syntaktische Routen wie versucht haben,
Aber keiner scheint zu funktionieren. Ich bin sicher, dass ich hier etwas offensichtliches verpasse, aber Googeln für solche Dinge wie "benutze jquery, um verschachtelte div-Tags unter Verwendung einer Variablen für die Eltern-ID zu setzen" ergab die obigen Versuche.
Wenn es eine Conversejs-Hilfsfunktion gibt, um den Chat-Titel-Wert im Modell zu setzen und umgekehrt die Aktualisierung des Chatbox-Titeltextes automatisch zu verwalten, wäre das auch großartig.
Jede Hilfe wird geschätzt.
Sie suchen nach dem ** Element ** 'Chat-Titel' von '# {der Chatbox}' (ich nehme an, Sie meinten Chatbox nicht Charbox). Ich nehme an, dass es kein Element 'chat-title' gibt, sondern ein div mit der Klasse' chat-title'. Wenn dies der Fall ist, verwenden Sie '$ ('#' + chatbox_id + '.chat-title')' (beachten Sie den Punkt vor 'chat-title'). – fathyb
Fathyb - Danke für Ihren Kommentar. Sie sind in der Tat richtig ... Chat-Titel ist in der Tat eine Klasse. Leider scheint das vorgeschlagene Adressierungsschema nicht darauf zuzugreifen. Um sicher zu sein, ist chat-title eine NESTED-Klasse, die weiter unten von chatbox_id liegt, also nicht sicher, ob das die Syntax überhaupt beeinflusst, – rotor155