-1

我面临一个非常奇怪的问题。

我有一个带有文本框的简单表单。我有两个提交类型的按钮。如果我name = submit在其中一个按钮上进行设置,则单击时按钮将被禁用且未发布。

这是引导带中的标准行为还是可以更改?

4

2 回答 2

1

您不应该将任何表单元素命名为“提交”,因为这将屏蔽/遮蔽 JavaScript form.submit()函数并且它不可用!

document["nameOfForm"]["nameOfField"]您可以使用或通过名称来寻址任何表单字段document.nameOfForm.nameOfField。已经有类似的表单属性document.myForm.name或类似的方法document.myForm.submit()

使用浏览器已经定义的表单属性或方法的名称会干扰任何依赖它们的功能。

要避免的其他常见字段名称:

  • 行动
  • 加密类型
  • 方法
  • 姓名
  • 目标

看来您选择的 JS 库正在form.submit()用于提交表单。

于 2014-07-22T13:22:23.830 回答
1

不要使用表单的属性,例如提交、重置、长度、方法来设置表单、字段元素的名称或id 属性。名称冲突可能会导致问题。

例如,如果使用 submit 来命名 Submit 按钮,则无法在验证后提交表单:

<button type="submit" name="submit" class="btn btn-primary">Submit</button>

DOMLint有一个完整的规则列表来检查这些问题的标记。

参考:官方文档中的名称冲突警告

于 2014-09-08T18:21:16.590 回答