使用jQuery ajax从多行文本框传递值
我想使用jQuery.ajax将内容从多行文本框传递到sql数据库使用jQuery ajax从多行文本框传递值,jquery,asp.net,json,asmx,Jquery,Asp.net,Json,Asmx,我想使用jQuery.ajax将内容从多行文本框传递到sql数据库 function UpdateMemogramContent() { $.ajax({ type: "POST", url: "MemogramWebServices.asmx/UpdateMemogramContent", data: "{ 'mId': " + $("#LabelId").text() + ", 'content': " + $("#TextBoxCon
function UpdateMemogramContent() {
$.ajax({
type: "POST",
url: "MemogramWebServices.asmx/UpdateMemogramContent",
data: "{ 'mId': " + $("#LabelId").text() + ", 'content': " + $("#TextBoxContent").text() + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: Success,
error: Error
});
}
我面临的问题是,来自多行文本框的内容引发了一个无效的json原语异常。看看这篇文章:
{'mId':314,'content':测试
测试}
如何使用.ajax将多行文本框中的文本传递到sql数据库?在调用发布数据之前放置一个断点,并查看您向服务器发送的值。 也
数据:“{mId:”为什么不使用像这样的实际JavaScript结构。不过,这会将mId和内容作为标准post参数传递,而不是作为JSON的一部分传递
$.ajax({
type: "POST",
url: "MemogramWebServices.asmx/UpdateMemogramContent",
data: {
mId: $("#LabelId").text(),
content: $("#TextBoxContent").text()
},
...
});
否则,您也可以这样使用:
您是否尝试过$(“#TextBoxContent”).val()?在通过之前尝试过使用trim()?正如@Mayank所说,您应该使用val()而不是text()。我使用.text()获得了良好的内容。我改为.val()同样的问题。我应该将内容包装在“”中吗?我建议您删除“mId”和“content”中的单引号。只需使用mId和content。我毫不怀疑这会起作用。我最终使用“content”解决了问题:“+$(“#TextBoxContent”).val()+“}”。传递int时,您可以将其保留,但必须以“text”形式传递文本。谢谢大家!
var json_data = JSON.stringify({
mId: $("#LabelId").text(),
content: $("#TextBoxContent").text()
});
$.ajax({
type: "POST",
url: "MemogramWebServices.asmx/UpdateMemogramContent",
data: json_data,
...
});