如何使用javascript获取div的值

新手上路,请多包涵

这是我的股利:

 <div id="demo" align="center"  value="1">
    <h3>By Color</h3>
    <input type="radio" name="group1" id="color1" value="#990000"  onClick="changeColor()"/><label for="color1">Red</label>
    <input type="radio" name="group1" id="color2" value="#009900" onClick="changeColor()"/><label for="color2">Green</label>
    <input type="radio" name="group1" id="color3" value="#FFFF00" onClick="changeColor()" /><label for="color3">Yellow</label><br><br><br>
</div>

我想要那个 div 的值属性 (value=“1”)。

我正在尝试这样:

 function overlay()
{
    var cookieValue = document.getElementById("demo").value;
    alert(cookieValue);
}

但它显示“未定义”如何使用 javascript 获取值 1 请提出任何解决方案。

原文由 srinu 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 297
2 个回答

DIV 没有 value _属性_。

从技术上讲,根据 DTD,它们也不应该有 value _属性_,但在这种情况下,通常您需要使用 .getAttribute()

 function overlay()
{
    var cookieValue = document.getElementById('demo').getAttribute('value');
    alert(cookieValue);
}

原文由 JAAulde 发布,翻译遵循 CC BY-SA 3.0 许可协议

简而言之,“值”不是 div 的有效属性。所以返回undefined是绝对正确的。

您可以做的是使用 HTML5 属性之一“data-*”

 <div id="demo" align="center"  data-value="1">

脚本将是:

 var val = document.getElementById('demo').getAttribute('data-value');

这应该适用于大多数现代浏览器 请记住将您的文档类型设为 <!DOCTYPE html> 以使其有效

原文由 Guidhouse 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题