您好我想点击一个按钮将一些字符串发布到服务器端 并有如下代码
$('#sendData').click(function () {
$.ajax({
url: '/home/SendData',
type: 'POST',
dataType: 'string',
data: JSON.stringify(somedata),
contentType: 'text/plain; charset=utf-8'
});
});
在Controller中我有方法
[AcceptVerbs(HttpVerbs.Post)]
public string SendData(string emaildat)
{
string data=emaildat;
}
但是emaildat将变为空(数据不会出现)。
这是ajax方法是否正确。请帮帮我
答案 0 :(得分:1)
嗯,data
的{{1}}属性需要带有键值对的对象映射或字符串(必须是查询字符串)。
所以你不能只在那里输入一个JSONized字符串。这样做:
.ajax()
然后访问data: {
mydata: JSON.stringify(somedata)
},
服务器端(不要忘记在那里解析它)。
答案 1 :(得分:0)
您可以尝试序列化您的表单,而不是将其作为JSON发送。
data: $("#formid").serialize()