关于动态文本框的一般概念

Posted

技术标签:

【中文标题】关于动态文本框的一般概念【英文标题】:General concept regarding dynamic textboxes on the fly 【发布时间】:2012-04-29 18:09:45 【问题描述】:

我正在从事一个需要即时构建“页面”的项目。一个页面可以包含各种控件,如文本框、复选框等。目前,当用户想要添加一个新的文本框时,我会发出一个 ajax 请求并呈现部分视图并返回 html 并在客户端显示它。这可行,但我也想在用户填写这些动态控件时正确处理数据。在某种程度上,如果我没记错的话,我需要能够制作 HTML 控件数组。现在,如果我们给视图提供静态列表并使用 Html.TextboxFor 生成文本框,我们会看到生成的名称是:

[0].FruitName
[1].FruitName
[2].FruitName

在发出 Jquery Ajax 请求时如何处理此索引部分,以便始终获得正确的索引并将其呈现在客户端上。

如果有人有比发出 ajax 请求更好的解决方案,请告诉我。我需要处理 HTML 控件的动态呈现,并在回发到服务器时正确访问它们的值。

【问题讨论】:

【参考方案1】:

看看Non-Sequential Indiceshttp://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx。 他还引入了一个辅助方法来生成它。 另外,我认为您可以通过 ajax 调用传递一个索引,然后将其从 Controller 传递到您的局部视图,并使用它来生成正确的索引 TextBox。

更新: 我在Submit javascript dynamically added elements to controller method like ***

提出了一个非常相似的问题

【讨论】:

是的,这是解决方案之一,但如果 ajax 调用失败会发生什么。我必须手动然后跟踪它。 @TomKaufmann 您可以在 ajax 调用的 OnComplete 回调事件中增加计数器。 @TomKaufmann:我在最后一条评论中的意思是OnSuccess。猜猜你已经发现了它

以上是关于关于动态文本框的一般概念的主要内容,如果未能解决你的问题,请参考以下文章

使用文本框的值动态生成控件

下列关于windows文本框的描述不正确的是a文本框内不能添加文本框b文本框内的

Windows phone 8.1 - 来自动态创建的文本框的文本

关于js中事件监听的问题(文本框 回车键 失去焦点)

Ext文本框的问题

如何在 wpf 中移动和调整动态文本框的大小