jquery сделать действие для элемента добавление - PullRequest
0 голосов
/ 24 мая 2018

Я делаю чат, я хочу подтвердить каждое отправленное сообщение или нет?

Я не знаю, как определить подтверждение класса, добавить, я хочу, чтобы каждый класс подтвердилна его ответ

 $('#btn').click(function){
var message = $('textarea').val();

$('#chat').append(message+"<span class="confirm">Sending...</span>");

$.post('chat.php', function(result){

if($.trim(result)==='ok'){

this class confirm html('sent');

}else{
this class confirm html('error');
}

}

}

Ответы [ 2 ]

0 голосов
/ 24 мая 2018
  • Исправьте синтаксические ошибки
  • Создайте новый элемент (например, DIV) с помощью $("<div/>", {}); и сохраните его в переменной
  • После получения ответа PHPиспользуйте метод jQuery .addClass(), чтобы добавить нужный класс к вашему запомненному элементу

$('#btn').click(function() {

  var message = $('textarea').val();

  // Create a new message element
  var $element = $("<div/>", {
    html: message + "<span class='confirm'>Sending...</span>",
    appendTo: "#chat"
  });

  // Check response and add class
  $.post('chat.php', {data: message}, function(result) {
    $element.addClass( $.trim(result) === 'ok' ? 'sent' : 'error')
  });

});
0 голосов
/ 24 мая 2018

Если я понимаю ваш синтаксис, я считаю, что вы ищете что-то вроде:

$('#btn').click(function){
var message = $('textarea').val();

$('#chat').append("<p>"+message+" <span class='confirm'>Sending...</span><p>");

$.post('chat.php', function(result){

if($.trim(result)==='ok'){

$(".confirm").text('sent');

}else{
$(".confirm").text('error');
}

}

}

, но я не думаю, что ваш POST будет работать.Я предполагаю, что вы хотите отправить message в chat.php.Для этого вам понадобится что-то вроде:

$.post( "chat.php", { message: message })
  .done(function( result ) {
    //
  });
...