我的viewmodel包含一个字符串列表:
public class supplierviewmodel
{
    public supplier supplier { get; set; }
    public List<string> Numbers;
}

用户可以在视图中添加任意数量的字符串:

<div class="editor-label">
        @Html.LabelFor(model => model.Numbers)
    </div>

    <div id="allNumbers">
        @for (int i = 0; i < Model.Numbers.Count; i++)
        {
        <div class="editor-label">
            @Html.TextBoxFor(m => m.Numbers[i])
        </div>
        }
    </div>

    <div id="newNumber" style="display:none;">
      <input type="text" name="Numbers[#]" style="display:block;" />
    </div>

    <button type="button" id="addNumber" >Add</button>

这是在客户端使用jquery完成的:

var container = $('#allNumbers');
$('#addNumber').click(function () {
    var index = container.children().length;
    var clone = $('#newNumber').clone();
    clone.html($(clone).html().replace(/\[#\]/g,'[' + index + ']'));
    container.append(clone.html());
});

我的问题是没有动态添加的字符串被发送回控制器,即使它们都被命名为“Numbers [i]”.
我在这里想念的是什么?

解决方法

Numbers是一个字段,DefaultModelBinder无法设置字段的值.您需要通过添加getter / setter使其成为属性
public List<string> Numbers { get; set; }

jquery – 动态创建的文本框未绑定到模型的更多相关文章

  1. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  2. 在IOS9中的Cordova应用程序使用JQuery / Javascript的window.history问题

    在两个测试用例中唯一改变的是Cordova.js.解决方法我看到这是几个星期前,但我会发布这个,以防其他人遇到它.听起来它可能与iOS9中的哈希更改生成的导航事件有关.如果是这样,可以将其添加到index.html以禁用哈希侦听:

  3. iOS 5上的jQuery事件

    解决方法在Apple开发论坛上由一个人回答:我需要在将元素添加到DOM之后才绑定(),如下所示:

  4. Swift之旅三函数与闭包

    用func来定义一个函数。试一试去掉day参数。你可以用嵌套函数来把又长又臭的代码组织一下。函数其实是闭包的一个特例。闭包内的代码可以访问到变量和函数必须是与闭包创建的范围是一致的,即便闭包是在另一个范围内执行——在讲嵌套函数时就说过这个例子了。试一试重写这个闭包,对所有奇数都返回0有几种方法可以更简明地写闭包。单行语句的闭包隐式返回语句中的值。作为最后一个参数传到函数里的闭包可以在括号后面马上出现。

  5. 对数组进行各种操作

    //:Playground-noun:aplacewherepeoplecanplayimportUIKit//声明、定义数组varnumbers=[1,2,216)">3,216)">5,216)">8]varstrings=["ios","android","java"]//数组长度numbers.countstrings.count//向数组中添加元素//向数组中追加元素numbers.ap

  6. 函数和闭包

    调用函数使用他的名字加上小括号中的参数列表。使用->分隔参数的名字和返回值类型。内嵌函数可以访问其定义所在函数的变量。你可以使用内嵌函数来组织代码,避免函数过长和过于复杂。这意味着函数可以返回另一个函数funcmakeIncrementer()->{funcaddOne->Int{return1+number}returnaddOne}varincrement=makeIncrementer()increment//一个函数可以接受其他函数作为参数funchasAnyMatches->Bool{forit

  7. swift2 函数

    输入输出参数为了实现在函数中修改传入的值,不仅仅改副本还要修改原值,可以将变量声明为输入输出参数嵌套函数这章中你所见到的所有函数都叫全局函数,它们定义在全局域中。你也可以把函数定义在别的函数体中,称作嵌套函数。默认情况下,嵌套函数是对外界不可见的,但是可以被他们封闭函数来调用。一个封闭函数也可以返回它的某一个嵌套函数,使得这个函数可以在其他域中被使用。

  8. Swift学习笔记之函数

    可以看看json-swiftlibrary中的应用。变量我们可以定义一个变量,这个变量的类型是函数类型:参数函数既然是类型的一种,那么显然也是可以作为参数传递的:返回值函数也是可以作为结果返回的。这个具体内容可以参见Swift方法的多面性中柯里化部分的内容。我们可以这样调用多返回值在Swift中我们可以利用tuple返回多个返回值。

  9. Swift - 函数

    函数参数与返回值在不同情况下的声明与实现:函数返回值Swit函数返回值支持任意数据类型,如:String、Int、数组、字典等。函数类型Swift的每个函数都有特定的函数类型,函数类型就像数据类型一样,即可用于定义变量,也可用作函数的形参类型,还可作为函数的返回值类型。使用函数类型在Swift中,使用函数类型就像使用其他类型一样。

  10. swift学习日志——可变参数

    可变参数一个可变参数可以接受零个或多个值。可变参数的传入值在函数体中变为此类型的一个数组。例如,一个叫做numbers的Double...型可变参数,在函数体内可以当做一个叫numbers的[Double]型的数组常量。这应该算是swift的一个Bug吧。swift还在完善中,相信不就将来会解决的。

随机推荐

  1. jquery-plugins – 是否可以使用猫头鹰旋转木马实现循环/无限轮播?

    我正在使用猫头鹰旋转木马,它的工作完美,除了它不支持循环/无限滚动.我没有搜索google和stackoverflow的想法,没有运气.有没有人在猫头鹰旋转木马上实现圆形/无限滚动?

  2. jQuery动态输入字段焦点

    我想使用以下jQuery向我的页面动态添加一个输入字段:在这样做之后,我希望输入字段具有闪烁的文本光标的焦点,所以我想在创建后立即输入.有人可以告诉我我该怎么办?

  3. jquery – 为什么$(window).height()这样错了?

    我试图获取当前浏览器的视口高度,使用但我得到的价值观太低了.当视口高度高达850px时,我从height()获取大约350或400像素的值.这是怎么回事?

  4. jquery – 如果在此div之外和其他draggables内部(使用无效和有效的还原选项),则可拖动恢复

    例如这样但是由于明显的原因,这不行.我可以说这个吗?

  5. 创建一个jQueryUI 1.8按钮菜单

    现在jQueryUI1.8已经出来了,我正在浏览更新,并且遇到了新的Buttonwidget,特别是SplitButtonwithadropdown的演示之一.这个演示似乎表明Buttonwidget可以在这里创建一个下拉菜单.作为讨论的问题,我想知道使用这个新的Button小部件来创建一个下拉菜单有什么方法.干杯.解决方法您必须在按钮下方列出一个列表,方式类似于此处为自动完成提供的演示:http

  6. 灰色divs使用JQuery

    我试图使用这个代码:为了淡出一大堆名为MySelectorDiv的div,唯一的是,它只会淡出第一个而不是所有的div,为什么呢?

  7. 使用jQuery动态插入到列表中

    我有两个订单列表在彼此旁边.当我从一个列表中选出一个节点时,我想按照字母顺序插入到另一个列表中.抓住的是我想要把一个元素放在另一个列表中,而不刷新整个列表.奇怪的是,当我插入到右边的列表中,它工作正常,但是当我插入到左边的列表中时,顺序永远不会出来.我也尝试将所有内容读入数组,并将其排序在一起,以防止children()方法没有按照显示顺序返回任何东西,但是我仍然得到相同的结果.这是我的jQuer

  8. 没有回应MediaWiki API使用jQuery

    我试图从维基百科获取一些内容作为JSON:但我没有回应.如果我粘贴到浏览器的地址栏,就像我得到预期的内容.怎么了?解决方法您需要通过添加&callback=?来触发具有$.getJSON()的JSONP行为?在querystring上,像这样:Youcantestithere.没有使用JSONP,你正在击中same-originpolicy,阻止XmlHttpRequest获取任何数据.

  9. jQuery Ajax请求每30秒

    我有这段代码,但是有些人在我的网站上的值可能会改变.我需要每30秒钟更新一次#financediv.这可以做吗解决方法您可以将代码放在单独的函数中,如下所示:然后每30秒建立一个定时器调用该函数:祝你好运!总结以上是DEVMAX为你收集整理的jQueryAjax请求每30秒全部内容。如果觉得DEVMAX网站内容还不错,欢迎将DEVMAX网站推荐给好友。

  10. jquery – keypress事件在IE和Chrome中不工作,但在FF工作

    任何想法为什么会这样发生?我通常认为Chrome会更加宽容代码?这是我的按键键.我错过了什么吗?右图();和leftimage();是应该工作的功能,因为我在其他地方使用这些功能谢谢您的帮助!

返回
顶部