【问题标题】:How to get ID of element by using Html.BeginForm()如何使用 Html.BeginForm() 获取元素的 ID
【发布时间】:2012-05-05 08:16:01
【问题描述】:

我有下面的表格和一些代码。

@using (Html.BeginForm("Insert", "Question", "POST"))
{
    <div id="add_tag">
        <div id="list_tag">
            <span class="post-tag" id="2">Phi kim<span class="delete-tag" title="Xóa Tag này"></span></span>
            <span class="post-tag" id="22">Hóa Vô Cơ<span class="delete-tag" title="Xóa Tag này"></span></span>
            <span class="post-tag" id="1">Lý<span class="delete-tag" title="Xóa Tag này"></span></span>
        </div>
        <div class="tag-suggestions hidden">
        </div>
    </div>
    <div class="form-sumit clear">
        <input type="submit" id="submit-button" value="Post your question" />
    </div>
}

我在 QuestionController 中的插入操作是这样的

    [HttpPost]
    [ValidateInput(false)]
    public ActionResult Insert(FormCollection _form)
    {
        //my code here
    }

我想通过使用 Html.BeginForm 和 FormCollection 获取嵌套的 span 标签的 id。我怎样才能做到这一点?请有人帮助我。非常感谢。

【问题讨论】:

    标签: asp.net-mvc-3 razor formcollection


    【解决方案1】:

    当您点击提交按钮时,表单会收集该表单内的所有输入值,并使用以下格式发送到服务器:inputId=inputValue。 Span 不是表单内的输入控件,并且表单不会收集其值或其他信息以发送到服务器。您可以生成隐藏的输入控件并为其设置 id 值。然后在服务器端的操作中,您可以从 FormCollection 中获取它。

    [HttpPost]
    [ValidateInput(false)]
    public ActionResult Insert(FormCollection formCollection)
    {
        //for example all hidden input controls start with "hidden_tag" id 
        //and end with your number of tag:
        var allNeededKeys = formCollection.AllKeys.Where(x => x.StartsWith("hidden_tag"));
        var listOfId = allNeededKeys.Select(formCollection.Get).ToList();
    }
    

    祝你好运。

    【讨论】:

    • 嗨@Dima Shmidt,我听从了你的建议,确实有效。非常感谢。 :D
    【解决方案2】:

    我很确定你不能。您可以使用 fiddler 来查看它们是否已回发到服务器,但我不认为它们是。

    【讨论】:

      【解决方案3】:

      您应该使用隐藏字段将 span 的 id 发布到服务器。 视图是强类型的吗?

      【讨论】:

        猜你喜欢
        • 2021-08-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-11
        • 2019-12-25
        • 2016-05-06
        • 1970-01-01
        相关资源
        最近更新 更多