动态文本框生成,带有按钮以生成文本框的子子集

本文关键字:文本 子集 动态 按钮 | 更新日期: 2023-09-27 17:50:42

我正在MVC中工作,并试图使用jquery来执行以下操作,如果有更简单的方法,我会很高兴听到它…

我希望有我的形式创建动态输入产生的东西,例如,可能看起来像这样:*我不知道有多少子猫的他们要进入也没有多少主要类别。

category0 <btnInsertSubCat0>
subcat0.0
subcat0.1
subcat0.2
category1 <btnInsertSubCat1>
subcat1.0 
subcat1.1 
<btbInsertNewCat>

我可以生成一个按钮,一个接一个地附加文本框,以及旁边的按钮,但即使我使用。live属性,我也无法获得子按钮。修改了很多代码,看了很多不同的教程都无济于事,这是不是很容易做到?

jQuery(document).ready(function () {
                var procID = 0;
                var orgID = 0;
                $('.clickme').live('click', function () {
                    var newItem = $("<input type='text' name='Procedure[" + procID + "]' value='Procedure[" + procID + "] />");
                    var newLabel = $("<br /><label id='Label[" + procID + "]' >ProcedureID: [" + procID + "]</label>");
                    var newDiv = $("<div class='objective'><b>Insert Objective</b>[" + procID + "." + orgID + "]</div>");
                    $("#procedureHolder").append(newLabel);
                    $("#procedureHolder").append(newItem);
                    $("#procedureHolder").append(newDiv);
                    procID++;
                });
                $('.objective').live('click', function () {
                    var newObj = $("<input type='text' id='Objective[" + (procID - 1) + "." + orgID + "]' >ObjectiveID: [" + (procID - 1) + "." + orgID + "]</label>");
                    $("#procedureHolder").append(newObj);
                    orgID++;
                });
            });

动态文本框生成,带有按钮以生成文本框的子子集

我编辑了我的帖子,
我自己想出了如何利用jquery创建无限数量的子动态文本框。它们也都返回到表单集合中。我弄明白了为什么目标没有显示出来,结果我宣布了ID rather than Name

谢谢!

我使用以下方法使用ASP进行动态搜索屏幕。净MVC。搜索选项在映射到产品的数据库中进行管理。这使得营销团队可以在网站的管理部分调整搜索结果和搜索选项。基本方法如下:

    public class FormFieldCollection : List<FormField>
    {
        public string FormFieldType { get; set; }
    }
    public class FormField
    {
        public string Name {get;set;}
        public string Type {get;set;}
        public string Value {get;set;}
        public bool IsChecked {get;set;}
    }
    public class FormFieldModel
    {
        public FormFieldCollection PaymentOptions { get; set; }
    }

在自定义Helper或使用foreach生成的视图中。在你的控制器动作中输入:

public ActionResult SomeActionMethod(FormCollection formCollection) 
{
   //search through the results, map back to class or loop through key value pairs.
}

View Code,显然包括一些漂亮的html标记来格式化表单。

@Model FormFieldCollection 
@{     
      View.Title = "Form";     
      Layout = "~/Views/Shared/_defaultMaster.cshtml"; 
 }
   @foreach(var formField in Model){
      <input type="@formField.Type" id="@formField.Name" name="@formField.Name"   value=""@formField.Value"" />   
}
@using (Html.BeginForm("SomeActionMethodAdd", "ControllerName", FormMethod.Post)) 
{
   //Submit form to 
   Field Name: <input type="text" value="" />  * must be unique
   <input type="submit" value="Submit" /> 

}

语法可能不完美,只是内存不够用。