复制并粘贴到内容可编辑的Div中

时间:2019-05-14 15:11:29

标签: jquery ajax

我有一个问题,如果用户键入文本并设置其格式,则信息将成功提交。但是,如果用户复制并粘贴格式化的文本(即Word文档文本),则提交失败。我收到500:Internal Server Error。这没有意义,因为当我输入信息时脚本可以工作。仅当我复制某些内容并将其粘贴到div中时,该操作才会失败。

我尝试使用Erik Woods 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";
        }

0 个答案:

没有答案