【问题标题】:Javascript 'value' propertyJavascript“价值”属性
【发布时间】:2017-05-27 14:12:48
【问题描述】:

我需要知道哪些 Javascript 元素具有与之关联的“值”属性?根据 MDN,段落没有“Value”属性,但具有“textContent”属性。 “值”是否只用于操作输入类型控件的文本内容?

【问题讨论】:

  • JavaScript 没有“元素”(除非您指的是数组中的元素)。你是说 HTML 元素吗? DOM 的任何文档都会告诉您每种类型的 HTML 元素具有哪些属性/属性。

标签: javascript html


【解决方案1】:

value 属性定义了一个默认值,该值将在页面加载时显示在元素中。表单控件和其他一些 html 元素具有此属性(请参见下面的列表)。

HTML 中的 value 属性 和 JavaScript 中的 value 属性 对这些控件的工作方式不同。您可以使用 value 属性设置初始值,但 value 属性包含控件的实际值。 Source

textContent 属性设置或返回指定节点的文本内容,及其所有后代。如果您设置 textContent 属性,则所有子节点都将被删除并替换为包含指定字符串的单个 Text 节点。

要设置或返回元素的 HTML 内容,请改用 innerHTML 属性。

在 HTML DOM 中,value 属性设置或返回属性的值:

  • 对于buttoninputoption 元素,value 属性指定元素的初始值。
  • 对于li 元素,value 属性设置有序列表项的值。以下列表项将从该数字开始递增。
  • 对于progress 元素,value 属性指定已完成多少任务。
  • 对于param 元素,value 属性指定元素的值。

带有value属性的HTML元素:SourceSource

  • button
  • input

    • button: type="button"
    • checkbox: type="checkbox"
    • file: type="文件"
    • hidden: type="hidden"
    • password: type="password"
    • radio: type="radio"
    • reset: type="reset"
    • submit: type="提交"
    • text: type="text"
  • option
  • li
  • progress
  • param
  • meter

【讨论】:

  • 谢谢 Emre,解释得非常清楚...(+1 回复)
  • 谢谢。如果可以,请不要忘记接受作为答案。
【解决方案2】:

简单地说:

所有允许用户输入或选择内容的元素都有一个带有 js 的 value 属性。

如果元素只有纯文本,可以使用textContentinnerHTML获取纯文本值

【讨论】:

    【解决方案3】:

    value 是表单域元素的属性。段落(和其他元素)有textContentinnerHTML

    它与字段上对应的value属性紧密耦合——换句话说,如果一个被更新,另一个也会被更新。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-08
      • 1970-01-01
      • 2013-10-31
      • 1970-01-01
      相关资源
      最近更新 更多