【问题标题】:Form tag automatically removed from HTML表单标签自动从 HTML 中移除
【发布时间】:2014-04-23 04:54:32
【问题描述】:

我有一个包含两个输入元素的简单表单。

<form class="submitform">   
    <input class="remove_list_items clear_button" type="button" value="A"/>
    <input id="logIn_submit" class="clear_button" type="button"  value="B" />
</form>

我看到了用源代码写的表格。
但是,当我检查输入元素(右键单击 > 检查元素/F12)时,表单标签就会消失(我还可以通过输入元素是 100% 的事实来判断,而不是通过表单(通过 css)减小宽度。 奇怪的是,如果我从源代码(CTRL+U)复制表单代码,通过检查元素(F12)编辑代码并替换代码,一切都应该是这样。

源代码中的代码(如果我通过检查元素进行编辑,它就可以工作):

<form class="submitform">   
    <input class="remove_list_items clear_button" type="button" value="A"/>
    <input id="logIn_submit" class="clear_button" type="button"  value="B" />
</form>

页面加载时我通过 Inspect Element 看到的代码(注意缺少 FORM 标签):

<input class="remove_list_items clear_button" type="button" value="A"/>
<input id="logIn_submit" class="clear_button" type="button"  value="B" />

这在 Chrome 和 IE 10 中都会发生。
我在页面上有其他可以正确显示的表单。
知道为什么会这样吗?

【问题讨论】:

  • 你能在 jsFiddle.net 的例子中重现这个吗?
  • 你能在现场演示网站上重现这个吗,比如JS Fiddle?因为这不应该出于任何原因发生,假设您的 HTML 是有效的,顺便提一下,您是否尝试将 actoion 和 method 属性添加到 form 元素?
  • 代码中是否还有另一个打开的表单标签?
  • 大家好。这是 JSFiddle(从原始代码逐行​​复制):jsfiddle.net/6ZyWU/1 这当然不会发生在 JSFiddle 上。这是我的 Chrome 检查元素的快照:screencast.com/t/sBLrcSDTP5Ml,这是相同的元素,只是来自查看源:screencast.com/t/sBLrcSDTP5Ml
  • @Jrod,谢谢。就是这样,由于某种原因,以前的表单结束标记将其 / 删除。谢谢你。添加为答案,我会将其标记为一个。谢谢大家

标签: html css


【解决方案1】:

删除任何尚未关闭的额外打开表单标签。

Chrome 会尝试修复无效的 HTML,但并不总是正确。

【讨论】:

  • 如果您不确定,请使用 Chrome 中的 view-source(或其他浏览器中的等效项)来获取提供给浏览器的原始 html。然后通过 HTML 验证器 like this one 运行它,然后您应该能够找到任何格式错误的 HTML。
  • 这可能有点 hacky,但我在 ASP.net 网络表单上工作时遇到了同样的问题,而无法控制包装表单,我注意到它只删除了它找到的第一个嵌套表单,我添加了一个空
    在消失的上面,这样就成功了(我的嵌套表单保持不变)
  • 谢谢你一百次!让我免于浪费一个晚上!
  • 简单地说,难以置信!让我从浪费时间中解脱出来!谢谢!
  • 当我在一个表单中有一个表单并且没有意识到它时发生在我身上。 Chrome 移除了内部表单元素。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-06
  • 1970-01-01
  • 1970-01-01
  • 2015-11-29
  • 2017-06-11
  • 1970-01-01
  • 2022-01-19
相关资源
最近更新 更多