我将json传递给webmethod时出错了 服务器端,webmethod需要一个字符串。 我认为错误是因为我试图在json中转换数组
function Salvar() {
var arrayCursos = [];
$("#dvCursos :checkbox").each(function(index) {
if (this.checked) {
var item = {
idCurso: this.value,
permi: "1"
};
arrayCursos.push(item);
} else {
var item = {
idCurso: this.value,
permi: "0"
};
arrayCursos.push(item);
}
});
var jsonText = JSON.stringify({ jsonCursos: arrayCursos });
$.ajax({
type: "POST",
url: "usuario-curso.aspx/Salvar",
data : jsonText,
async: false,
contentType: 'application/json;charset=utf-8',
success: function() {
},
error: function(status, ajaxOption, ex) {
alert(ex);
}
});
}
答案 0 :(得分:0)
如果您的webmethod需要一个字符串,您需要告诉服务器更改您的contentType
function Salvar() {
var arrayCursos = [];
$("#dvCursos :checkbox").each(function(index) {
if (this.checked) {
var item = {
idCurso: this.value,
permi: "1"
};
arrayCursos.push(item);
} else {
var item = {
idCurso: this.value,
permi: "0"
};
arrayCursos.push(item);
}
});
var jsonText = JSON.stringify({ jsonCursos: arrayCursos });
$.ajax({
type: "POST",
url: "usuario-curso.aspx/Salvar",
data : jsonText,
async: false,
contentType: 'text/html;charset=utf-8',
success: function() {
// some code here
},
error: function(status, ajaxOption, ex) {
alert(ex);
}
});
}