【问题标题】:Name attribute gets removed from FORM tag in .NETName 属性从 .NET 中的 FORM 标记中删除
【发布时间】:2014-04-24 14:00:22
【问题描述】:

如何确保 .NET 不会从我的 HTML 表单中删除 NAME 属性。我需要这个才能使用 AngularJS。请告诉我。

在 visualstudio 中,我的表单如下所示:

<form id="scheduleFrm" name="scheduleFrm" runat="server">

但它最终在我的浏览器源中看起来像这样:

<form id="scheduleFrm" method="POST"> without the name attribute

AngularJS 需要 name 属性,但 name 可用于我的表单

【问题讨论】:

  • 你在使用mvc吗?请为您的表单输入您的 html 代码。
  • 我的表单标签看起来像这样:
    但它删除了 name="scheduleFrm" 为什么我在我的浏览器
  • @AlexandreTRIDADE: runat="server" 指向 ASP.Net,除非还有其他我不知道的用法。
  • 我想知道为什么它不会维护 name 属性并且仍然使用 runat="server"
  • @user,见ASP.NET 4 Breaking Changes:The HtmlForm control does not render a name attribute。我认为没有解决方法。

标签: c# visual-studio angularjs


【解决方案1】:

这很糟糕,但它会让你重新开始:

<form id="theName" ...>
    <script>document.getElementById("theName").setAttribute("name", "theName");</script>
    <!-- ...formalities -->
</form>

【讨论】:

  • ...
【解决方案2】:

有一个解决方法。例如,如果你这样做:

$scope.scheduleFrm...

访问您的表单,因此您可以:

var formName = $("#scheduleFrm").attr("name");
$scope[formName]...

做同样的事情。

【讨论】:

    猜你喜欢
    • 2015-03-16
    • 2011-07-27
    • 2011-11-20
    • 2023-04-02
    • 2012-03-16
    • 2013-07-12
    • 2019-11-18
    • 2015-05-09
    • 1970-01-01
    相关资源
    最近更新 更多