[英]How to create a javascript model to send to an MVC controller?
我有一个由专有C ++服务器提供服务的网站。 代码中有一个标准的javascript ajax函数,但我不想开始对其进行编辑。 实际发送位如下:
this.send=function(myawesomemodel)
{
/*Code redacted for brevity*/
obj.req.open('POST',myawesomeurl,true);
obj.req.setRequestHeader('Content-type','application/x-www-form-urlencoded');
obj.req.send(JSON.stringify(myawesomemodel));
}
它曾经将键值对作为查询字符串发送,但现在需要发送json。 我可以向该函数发送适当端点的控制器/操作地址(myawesomeurl),并且可以向其发送一个很棒的对象,该对象将被该操作接受为基本C#模型(myawesomemodel):
公共ActionResult myawesomeaction(MyAwesomeClass myawesomeclass){}
对于.Net模型:
public class MyAwesomeClass
{
public int A { get; set; }
public int B { get; set; }
public string C { get; set; }
}
如何建立控制器可以识别的JavaScript对象? 这是我最近的失败:
function MyAwesomeModel()
{
this.A=1;
this.B=2;
this.C='Three';
}
然后:
var anawesomemodel=new MyAwesomeModel();
myawesomeajaxmodel.send(anawesomemodel);
我无法在普通的javascript中构造正确的对象,因此mvc操作会对其进行注册,请问正确的方法是什么?
var myawesomemodel = {
A : 1,
B : 2,
C : 'Three'
}
对于发现该页面有相同问题的其他人, Stephen Muecke钉上了它
将ajax对象更改为:
this.send=function(myawesomemodel)
{
/*Code redacted for brevity*/
obj.req.open('POST',myawesomeurl,true);
obj.req.setRequestHeader('Content-type','application/json;charset=utf-8');
obj.req.send(JSON.stringify(myawesomemodel));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.