jConfirm отображает [объект объекта] вместо строки в качестве сообщения - PullRequest
0 голосов
/ 30 апреля 2019

Я использую jConfirm для создания всплывающего окна.Я хочу, чтобы он отображал сообщение "Вы уверены?"и заголовок «Подтвердить удаление».Название работает отлично, и обратный вызов работает нормально.Но сообщение отображается как [object Object], и я не могу понять, почему.Я указываю строку в качестве сообщения, поэтому ее не следует путать.

Это javascript, сгенерированный Rails:

<a onclick="deletePaymentMethod('3', 'gateway_bogus_3');" href="#"><img src="/assets/theme/admin/icons/delete.png" alt="Delete"> Delete</a>

И эта функция:

function deletePaymentMethod(method, dom_id) {
   jConfirm('Are you sure?', 'Confirm Deletion', function(r) {
      if(r){
        jQuery.ajax({
          type: 'DELETE',
          url: '/admin/payment_methods/' + method,
          data: ({_method: 'delete', authenticity_token: AUTH_TOKEN}),
          success: function(r){ $('#'+dom_id).fadeOut(); }
        });
       }
});
}

jConfirm определен в jquery.alerts.js (https://github.com/caricorrejidor/jquery-alerts) как:

function(message, title, callback)

Кроме того, я использую jConfirm в другом месте в моей кодовой базе, и он работает как положено.

ETA: Я просто настроил эти строки в библиотеке:

$("#popup_message").text(msg);
$("#popup_message").html( ("" + $("#popup_message").text()).replace(/\n/g, '<br />') );

Я заменил это на это, и теперь все отлично:

$("#popup_message").html( msg.replace(/\n/g, '<br />') );
...