Javascript c#-使用Jquery调用AJAX时出现的问题

Javascript c#-使用Jquery调用AJAX时出现的问题,javascript,c#,jquery,ajax,Javascript,C#,Jquery,Ajax,晚上好,, 我正在尝试在C#页面中调用AJAX,我正在处理一些问题 我的jQuery代码是: $(document).ready(function () { $.ajax({ type: "POST", url: "conteudo.aspx/GetNewPost", data: { ids: "<%=Request.QueryString["idconteudo"]%>" }, contentType: 'ap

晚上好,, 我正在尝试在C#页面中调用AJAX,我正在处理一些问题

我的jQuery代码是:

$(document).ready(function () {
    $.ajax({
        type: "POST",
        url: "conteudo.aspx/GetNewPost",
        data: { ids: "<%=Request.QueryString["idconteudo"]%>" },
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
        },
        success: function (data) {
            alert("ok");
        }
    });
});
有人知道发生了什么吗? PS:错误是
内部服务器错误

试试:

var idconteudo=“”



url:“conteudo.aspx/GetNewPost”,
数据:“{ids:\”“+idconteudo+”\”“}”,
contentType:'application/json;charset=utf-8',

…试试看:

var idconteudo=“”



url:“conteudo.aspx/GetNewPost”,
数据:“{ids:\”“+idconteudo+”\”“}”,
contentType:'应用程序/json;字符集=utf-8',


从你在帖子中给我们的信息中,我看到两件事是不正确的,还有一件事可能没有在你的问题中发布,但事实上这是你真正的来源

1) 您的
数据
写错了。应该是:

$(document).ready(function () {
    var test = "<%=Request.QueryString["idconteudo"]%>";
    $.ajax({
        type: "POST",
        url: "conteudo.aspx/GetNewPost",
        data: { 'ids' : test }, // the ids needs to have quotes to be correct syntax
        dataType: 'text',
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
        },
        success: function (data) {
            alert("ok");
        }
    });
});
$(文档).ready(函数(){
var检验=”;
$.ajax({
类型:“POST”,
url:“conteudo.aspx/GetNewPost”,
数据:{'ids':test},//ID需要有引号才能正确语法
数据类型:“文本”,
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“请求:+XMLHttpRequest.toString()+”\n\n状态:+textStatus+”\n\n错误:+ErrorSwink);
},
成功:功能(数据){
警报(“正常”);
}
});
});
2) 您说它是一个
POST
,但您的方法没有用
[HttpPost]
注释修饰

3) 您的
数据类型
设置为
'json'
,但您的方法返回的是
字符串
。。所以
'json'
应该改为
'text'


希望这有帮助

从你在帖子中给我们的信息中,我看到两件事是不正确的,还有一件事可能没有在你的问题中发布,但事实上这是你真正的来源

1) 您的
数据
写错了。应该是:

$(document).ready(function () {
    var test = "<%=Request.QueryString["idconteudo"]%>";
    $.ajax({
        type: "POST",
        url: "conteudo.aspx/GetNewPost",
        data: { 'ids' : test }, // the ids needs to have quotes to be correct syntax
        dataType: 'text',
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
        },
        success: function (data) {
            alert("ok");
        }
    });
});
$(文档).ready(函数(){
var检验=”;
$.ajax({
类型:“POST”,
url:“conteudo.aspx/GetNewPost”,
数据:{'ids':test},//ID需要有引号才能正确语法
数据类型:“文本”,
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“请求:+XMLHttpRequest.toString()+”\n\n状态:+textStatus+”\n\n错误:+ErrorSwink);
},
成功:功能(数据){
警报(“正常”);
}
});
});
2) 您说它是一个
POST
,但您的方法没有用
[HttpPost]
注释修饰

3) 您的
数据类型
设置为
'json'
,但您的方法返回的是
字符串
。。所以
'json'
应该改为
'text'


希望这有帮助

请使用下面的代码

因为您使用的是查询字符串中的文本数据类型,所以可以将数据类型设置为
text

$(document)
        .ready(function () {
            var q = "<%=Request.QueryString["idconteudo"]%>";
            alert(q);// just to check the value
            // assuming that you had passed query string value

            $.ajax({
                type: "POST",
                url: "conteudo.aspx/GetNewPost",
                data: { "ids": q },
                //contentType: 'application/json; charset=utf-8',
                dataType: 'text',// data type should be text
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    alert("Request: " +
                        XMLHttpRequest.toString() +
                        "\n\nStatus: " +
                        textStatus +
                        "\n\nError: " +
                        errorThrown);
                },
                success: function(data) {
                    alert("ok");
                }
            });
        });
$(文档)
.ready(函数(){
var q=“”;
警报(q);//只是为了检查值
//假设您已经传递了查询字符串值
$.ajax({
类型:“POST”,
url:“conteudo.aspx/GetNewPost”,
数据:{“id”:q},
//contentType:'application/json;charset=utf-8',
数据类型:“text”,//数据类型应为text
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“请求:”+
XMLHttpRequest.toString()+
“\n\n状态:”+
文本状态+
“\n\n错误:”+
错误抛出);
},
成功:功能(数据){
警报(“正常”);
}
});
});
编辑1:如果Web方法位于ASPX页面上,则应使用以下代码,以便以Json格式获得结果

$(document)
        .ready(function () {
            var q = "<%=Request.QueryString["idconteudo"]%>";
            //alert(q);
            // just to check the value
            // assuming that you had passed query string value

            $.ajax({
                type: "POST",
                url: "conteudo.aspx/GetNewPost",
                data: '{ids: "' + q + '" }',
                contentType: 'application/json; charset=utf-8',
                dataType: 'json',
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert("Request: " +
                        XMLHttpRequest.toString() +
                        "\n\nStatus: " +
                        textStatus +
                        "\n\nError: " +
                        errorThrown);
                },
                success: function (result) {
                    alert("ok" + result.d);
                }
            });
        });
$(文档)
.ready(函数(){
var q=“”;
//警报(q);
//只是为了检查值
//假设您已经传递了查询字符串值
$.ajax({
类型:“POST”,
url:“conteudo.aspx/GetNewPost”,
数据:{ids:“'+q+“}”,
contentType:'application/json;charset=utf-8',
数据类型:“json”,
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“请求:”+
XMLHttpRequest.toString()+
“\n\n状态:”+
文本状态+
“\n\n错误:”+
错误抛出);
},
成功:功能(结果){
警报(“正常”+结果d);
}
});
});

请使用以下代码

因为您使用的是查询字符串中的文本数据类型,所以可以将数据类型设置为
text

$(document)
        .ready(function () {
            var q = "<%=Request.QueryString["idconteudo"]%>";
            alert(q);// just to check the value
            // assuming that you had passed query string value

            $.ajax({
                type: "POST",
                url: "conteudo.aspx/GetNewPost",
                data: { "ids": q },
                //contentType: 'application/json; charset=utf-8',
                dataType: 'text',// data type should be text
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    alert("Request: " +
                        XMLHttpRequest.toString() +
                        "\n\nStatus: " +
                        textStatus +
                        "\n\nError: " +
                        errorThrown);
                },
                success: function(data) {
                    alert("ok");
                }
            });
        });
$(文档)
.ready(函数(){
var q=“”;
警报(q);//只是为了检查值
//假设您已经传递了查询字符串值
$.ajax({
类型:“POST”,
url:“conteudo.aspx/GetNewPost”,
数据:{“id”:q},
//contentType:'application/json;charset=utf-8',
数据类型:“text”,//数据类型应为text
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“请求:”+
XMLHttpRequest.toString()+
“\n\n状态:”+
文本状态+
“\n\n错误:”+