日期:2014-05-17  浏览次数:20425 次

ASP.NET AJAX调用不成功的问题。
Javascript代码:
JScript code

<script type="text/javascript" language="javascript">
        function submitSay() {
            var content = $("#saycontent")[0].value;
            if (content.length == 0) {
                return;
            }
            $.ajax({
                type: "POST",
                contentType: "application/json;charset=utf-8",
                url: "LogIndex.aspx/SubmitDiscuss",
                data: "{content:\"" + content + "\"}",
                dataType: "json",
                success: function () {
                    alert("添加成功!")
                },
                error: function (XmlHttpRequest, textStatus, errorThrown) {
                    //alert(XmlHttpRequest.responseText)
                    document.write(XmlHttpRequest.responseText);
                }
            });
        }
    </script>


C#代码:
C# code

        [WebMethod]
        public void SubmitDiscuss(string content)
        {
            LogContext model = new LogContext
            {
                ID = Guid.NewGuid().ToString(),
                UserID = "96ecdc8b-4cd1-4f44-b93e-d473a4b59128",
                LogText = content,
                LogTitle = "说说",
                LogType = 2,
                PubDate = DateTime.Now
            };
            business.AddLog(model);
        }


错误:
未知 Web 方法 SubmitDiscuss。
参数名: methodName 
求解答,,初学AJAX。是不是需要配置什么的...

------解决方案--------------------
public static void SubmitDiscuss(string content)
必须是静态方法
------解决方案--------------------
data: {"content":content },
data格式写成这样试试
------解决方案--------------------
dataType: "xml" 把取出来的字符串转成json就行了,直接写成json3.5以下版本不支持

其实楼主可以使用微软自带的ScriptManager,我觉得不jQuery的好使