PDA

View Full Version : سوال: ارسال تگ های Html به سرور از طریق JQuery



shahab_ksh
دوشنبه 25 اردیبهشت 1391, 03:39 صبح
با سلام

قصد من اینه از طریق Jquery داده های Ckeditor رو به سرور ارسال کنم از طریق وب سرویس

اما چون داده های من شامل تگ های html هست این ارور رو میده

و کد من در Jquery



$.ajax({
type: "POST",
url: "../webservices/layout.asmx/savelayout",
data: '{"HtmlSource":"' + $('#content_html').html() + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
if (msg.d)
alert("ذخیره شد");
else
alert("مشکلی پیش آمده")
},
error: function () {
alert("خطایی رخ داده");
}
});





{"Message":"Invalid object passed in, \u0027:\u0027 or \u0027}\u0027 expected. (49): {\"HtmlSource\":\"\n \n \u003cp style=\"text-align: center; \"\u003e\n\t\u003cspan style=\"background-color:#a52a2a;\"\u003ewelcome\u003c/span\u003e\u003c/p\u003e\n\u003cp style=\"text-align: center; \"\u003e\n\t\u003cspan style=\"background-color:#a52a2a;\"\u003ewelcome\u003c/span\u003e\u003c/p\u003e\n\"}","StackTrace":" at System.Web.Script.Serialization.JavaScriptObjectDe serializer.DeserializeDictionary(Int32 depth)\r\n at System.Web.Script.Serialization.JavaScriptObjectDe serializer.DeserializeInternal(Int32 depth)\r\n at System.Web.Script.Serialization.JavaScriptObjectDe serializer.BasicDeserialize(String input, Int32 depthLimit, JavaScriptSerializer serializer)\r\n at System.Web.Script.Serialization.JavaScriptSerializ er.Deserialize(JavaScriptSerializer serializer, String input, Type type, Int32 depthLimit)\r\n at System.Web.Script.Serialization.JavaScriptSerializ er.Deserialize[T](String input)\r\n at System.Web.Script.Services.RestHandler.GetRawParam sFromPostRequest(HttpContext context, JavaScriptSerializer serializer)\r\n at System.Web.Script.Services.RestHandler.GetRawParam s(WebServiceMethodData methodData, HttpContext context)\r\n at System.Web.Script.Services.RestHandler.ExecuteWebS erviceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.ArgumentException"}



چطور میشه این مشکل رو بر طرف کرد

aminghaderi
دوشنبه 25 اردیبهشت 1391, 09:48 صبح
سلام.
در کار با xmlhttprequest مجاز به انتقال یا transfer تک ها html نیستید.
اما راه داره شما باید حرف "<" و ">" را با حروفی دیگر کد کنید مثل "%h" و "%j" .
در سمت سرور هم عمل replace رو برعکس انجام دهید تا فرمت تگ ها درست شوند و بعد داخل db ذخیره و تمام.