【问题标题】:Jquery.SerializeArray how to add more parameters to it?Jquery.SerializeArray 如何添加更多参数呢?
【发布时间】:2012-11-10 03:38:13
【问题描述】:

我正在序列化我的表单以发送回服务器,并在服务器上自动绑定到视图模型。但是想再向服务器发送 2 个参数,但不确定如何

public ActionResult Test(MyViewModel vm, DateTime date, bool isSomething)

我不确定我的 ajax 调用中的“数据”参数应该是什么样子

   data: { 'vm':  frm, 'date': date, 'isSomething': true }, // this does not work.

通常我会这样做

   data: frm,

我的代码符合要求并且没有 javascript 错误,但是它将“vm”附加到所有的 frm 上,然后在服务器上它不知道如何绑定它。基本上 json 键搞乱了绑定。

当我这样做时

data: frm  // result of items look like this Id 7b97dcc7-3f8d-4cc0-ad2a-a104010f683d

当我这样做时

data: {'vm' : frm} // result looks like this vm[0][name]    Id

我必须如何发送它,所以它确实需要一个密钥。

【问题讨论】:

    标签: ajax asp.net-mvc json jquery


    【解决方案1】:

    您的操作方法中存在语法错误

    public ActionResult Test(MyViewModel, vm, DateTime date, bool isSomething)
    

    应该是

    public ActionResult Test(MyViewModel vm, DateTime date, bool isSomething)
    

    您可能还想将此添加到您的 jquery ajax 调用中

    data: { 'vm':  frm, 'date': date, 'isSomething': true },
    traditional: true
    

    它将允许您“使用传统的参数序列化样式。”

    【讨论】:

    • Naw 繁体不起作用。没有任何东西绑定到 ViewModel。
    猜你喜欢
    • 1970-01-01
    • 2017-09-05
    • 1970-01-01
    • 1970-01-01
    • 2020-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多