Javascript c#-使用Jquery调用AJAX时出现的问题
晚上好,, 我正在尝试在C#页面中调用AJAX,我正在处理一些问题 我的jQuery代码是: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
$(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错误:”+