2016-08-28 4 views
0

Я пытаюсь получить значения из нескольких входов, используя Sweetalert2, созданный с помощью html.несколько типов ввода с Sweetaleart2

swal({ 
     type: 'question', 
     title: 'Confirm recipient details', 
     html: '<p style="color:#C00; padding-bottom:0px; margin-bottom:0px"> 
      Cloud only terms and conditions</p> 
      <div class="swal_input_wrapper"> 
      <div class="label_wrapper">Email: </div> 
       <input id="swal-input1" style="width:75%" class="swal2-input" autofocus><br/> 
      <div class="label_wrapper">Recipient: </div> 
       <input id="swal-input2" style="width:75%" class="swal2-input"></div><br/> 
      <div class="label_wrapper">Message: </div> 
       <textarea id="swal-input3" style="width:75%" class="swal2-textarea"></textarea> 
      </div>', 
       preConfirm: function() { 
        return new Promise(function(resolve) { 
         resolve([ 
          $('#swal-input1').val(), 
          $('#swal-input2').val(), 
          $('#swal-input3').text() 
         ]); 
        }); 
       } 
     }).then(function(result) { 
      //values from inputs (results is an array) 
      email = result[0]; 
      email_name = result[1]; 
      email_message = result[2]; 
      alert(email_name); 
    }).done(); 

Тестирование на выходе, как я добавил части все это работает, пока я не добавить «email_message = результат [2];» что предполагает, что он не может разрешить значение текстовой области. Я попытался с помощью следующих действий, чтобы получить текст из текстового поля, все без успеха ...

$('#swal-input3').text() 
$('#swal-input3').val() 
$('#swal-input3').html() 

Вплоть до момента я добавить эту строку предупреждения (email_name) работает, но потом он останавливается без ошибок или предупреждений, которые я могу найти.

Обратите внимание, что в приведенной выше части html нет разрывов строк в моем скрипте, я добавил их, чтобы попытаться сделать мой код более удобным для чтения, потому что раздел кода здесь, похоже, не поддерживает wordwrap.

ответ

1

$('#swal-input3').val() работает просто отлично: [JSFIDDLE]

.val() является то, что вам нужно, чтобы получить значение поля TEXTAREA.