Скопируйте и вставьте в Contenteditable Div - PullRequest
0 голосов
/ 14 мая 2019

У меня проблема с тем, что, если пользователь печатает и форматирует текст, информация успешно отправляется.Однако, если пользователь копирует и вставляет отформатированный текст (например, текст документа Word), он не может быть отправлен.Я получаю 500: Внутренняя ошибка сервера.Что не имеет смысла, так как скрипт работает, когда я набираю информацию.Сбой происходит только тогда, когда я копирую что-то и вставляю это в div.

Я пытался использовать это решение от Эрика Вудса https://jsfiddle.net/erikwoods/Ee3yC/ Однако я использую IE11, и текст вставки не поддерживается этой версией.

    $(document).ready(function () {
        $('#btnsubmit').click(function () {
                $.ajax({  
                type: 'POST',  
                contentType: "application/json; charset=utf-8",  
                    url: 'Test.aspx/Insert',
                    data: "{'SubjectDiv':'" + document.getElementById('SubjectDiv').innerHTML + "','PurposeDiv':'" + document.getElementById('PurposeDiv').innerHTML + "'}",  
                async: false,  
                success: function(response)
                {
                    alert("Success!")
                },  
                error: function(xhr, status, error) 
                {
                  var errorMessage = xhr.status + ': ' + xhr.statusText
                  alert('Error - ' + errorMessage);   
                }  
            }); 
    });
});

        [WebMethod]
        public static string Insert(string SubjectDiv, string PurposeDiv)
        {
            string connectionString = ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString;
            var NetworkID = HttpContext.Current.User.Identity.Name;
            string username = NetworkID.Substring(4);

            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                SqlCommand comm = new SqlCommand("INSERT INTO Data (Subject, Purpose) Values (@Subject, @Purpose)", conn);
                comm.CommandType = CommandType.Text;

                comm.Parameters.AddWithValue("@Subject", SubjectDiv);
                 comm.Parameters.AddWithValue("@Purpose", PurposeDiv);
                conn.Open();
                comm.ExecuteNonQuery();
                conn.Close();
            }
            return "True";
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...