首页 新闻 赞助 找找看

jQuery Post 提交内容中有标签报错

0
悬赏园豆:10 [已解决问题] 解决于 2009-11-20 20:54

我用$.ajax{} 方法调用webservice

情况一: 内容中不包含标签,纯文字 。结果:不会报错,能提交。

情况二: 内容中添加了图片或是链接。结果:报错(如下)

 

 {"Message":"传入的对象无效,应为“:”或“}”。 (34): {title:\"test\",content:\"\u003cIMG src=\"img/emoticons/face20.gif\" \\\u003e\"}","StackTrace":"   在 System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeDictionary(Int32 depth)\r\n   在 System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeInternal(Int32 depth)\r\n   在 System.Web.Script.Serialization.JavaScriptObjectDeserializer.BasicDeserialize(String input, Int32 depthLimit, JavaScriptSerializer serializer)\r\n   在 System.Web.Script.Serialization.JavaScriptSerializer.Deserialize(JavaScriptSerializer serializer, String input, Type type, Int32 depthLimit)\r\n   在 System.Web.Script.Serialization.JavaScriptSerializer.Deserialize[T](String input)\r\n   在 System.Web.Script.Services.RestHandler.GetRawParamsFromPostRequest(HttpContext context, JavaScriptSerializer serializer)\r\n   在 System.Web.Script.Services.RestHandler.GetRawParams(WebServiceMethodData methodData, HttpContext context)\r\n   在 System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.ArgumentException"}

 

还有像 \u003c 这样的编码不知道怎么冒出来的

风过浪静的主页 风过浪静 | 初学一级 | 园豆:68
提问于:2009-11-20 19:29
< >
分享
最佳答案
0

"<" 号escape encodeURIComponent编码一下

收获园豆:10
woody.wu | 老鸟四级 |园豆:3621 | 2009-11-20 19:46
还是没用,我用httpwatch看到post的数据时正常的,但是报错的地方才看到编码异常
风过浪静 | 园豆:68 (初学一级) | 2009-11-20 19:57
解决了,谢谢 先在客户端将内容用encodeURIComponent(sring)编码,再在Webservice用Server.UrlDecode(string) 下
风过浪静 | 园豆:68 (初学一级) | 2009-11-20 20:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册