如何使用按钮和回发在视图中创建textboxfor我想在thIs textBox上获取输入的值

时间:2016-01-30 14:49:00

标签: jquery asp.net asp.net-mvc razor

ASP MVC RAZOR中的

我想创建一个按钮,单击它时会添加一个TextBoxFor,并且在回发时我想从创建的文本框中获取输入的值。

非常感谢帮助:)

1 个答案:

答案 0 :(得分:0)

这是一个非常广泛的问题,但我会尽我所能并在此处粘贴一些伪代码以帮助您入门(如果我不误解您的话)。

我声明了一些复杂的类型用作视图的演示:

public class Derp
{
    public string Flerp { get; set; }
    public string Slerp { get; set; }
    public string Blerp { get; set; }

    public Derp ()
    {
    }
}

出于某种原因,您似乎需要一个按钮来“创建”要提交的文本框。如何隐藏一些表单字段并使用脚本来帮助您显示它们?也许是这样的:

@model MVCTest.Derp

<div>
@using (@Html.BeginForm("SaveDerp", "Home", FormMethod.Post))
{   
    <div>
        <button onclick="$('#Blerp').show()" value="show">show Blerp</button>
        @Html.TextBoxFor(m => m.Blerp, new { style = "display: none;" })
    </div>
    @Html.TextBoxFor(m => m.Slerp)
    @Html.TextBoxFor(m => m.Flerp)

    <button type="submit" value="save"></button>
}
</div>

然后提交表单以检查值是否已通过:

[HttpPost]
public ActionResult SaveDerp(Derp derp)
{
    try
    {
        var inputText = derp.Blerp;

        //TODO: do some db stuff

        return RedirectToAction("Index");
    }
    catch(Exception e)
    {
        //TODO: stuff...
        return RedirectToAction("Index");
    }
}

就像我说的那样,你的问题相当广泛,也许某些脚本解决方案对你不起作用,但是如果你想修改你的问题那么我会建议发送一些代码来帮助我们给你答案。 (帮助我们帮助你)