我遇到一个问题,即简单form
标记添加了action
和method
属性。还添加了一些隐藏的输入字段,我猜测它是防伪的。
以下是我在Razor View中添加的html:
<form>test</form>
以下是正在呈现的内容:
<form action="/company/adduser" method="post" class="ng-pristine ng-valid">
test
<input name="__RequestVerificationToken" type="hidden" value="CfDJ8KMbFT4ebnROrEREXkL-MYlPSgL0ISe6_sqTJXc982ocoWgKH1v_yCV2_5Qa9h8AmVFaNk0i0Wpa6gQlhWY-PHkZ929_Tkv1B-lCR7-aLyd53L2448CLQNtakb-UHQmLgPGCiQF0dj4jij9lc_sS7jRPjcGFnNjxdT_wobz-CsU3NvR-fm-a9r0MnqhflgwLLw">
</form>
由于我只使用asp.net MVC来提供HTML并在客户端上使用AngularJS,因此导致了重大问题。尝试使用action
时,ng-submit
方法会导致角度问题。
有谁知道:
答案 0 :(得分:5)
截至本文撰写时,这只是Form标记助手中的一个错误。它将被修复。
您可以通过添加!来从taghelper处理中排除Form(或任何元素)!如<!form></!form>
答案 1 :(得分:1)
问题在于Microsoft添加了新的TagHelpers,其中一个是<form>
。它似乎正在添加所有额外的&#34;东西&#34;。
修改并更好地修复:
我最终将TagHelpers配置为具有前缀。在我_GlobalImport.cshtml
我添加了:
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
@tagHelperPrefix "asp:"
这让我可以添加&#34; asp:&#34;在我想要渲染的任何TagHelpers前面。这也阻止了TagHelper呈现<form>
标记。
Damien Edwards在Microsoft的ASP.NET团队中通知我,表单标签的问题是一个错误并将被修复。我仍然认为这些信息在此期间会有所帮助。
您还可以通过在前面添加!
来阻止TagHelper呈现:<!form></!form>