У меня проблема с тем, что, если пользователь печатает и форматирует текст, информация успешно отправляется.Однако, если пользователь копирует и вставляет отформатированный текст (например, текст документа 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";
}