我无法使用javascript访问div中的这些数据。
<div class="questions-text-alignment whiteTextWithShadow question-size-v4">
DATA HERE
</div>
有什么建议吗?
答案 0 :(得分:1)
您可以通过以下方式使用jQuery访问数据:
<script>
$(document).ready(function(){
var data = $(".questions-text-alignment").html();
alert(data);
})
</script>
没有jQuery:
<script>
var data = document.getElementsByClassName("questions-text-alignment");
alert(data[0].innerHTML);
</script>
答案 1 :(得分:0)
您可以使用document.getElementsByClassName()
进行访问,但问题是您将获得一个数组对象。使用阵列你必须找到你的。在下面的示例中,我假设只有一个类可用。
var arr = document.getElementsByClassName("question-size-v4");
alert(arr[0].innerHTML);
答案 2 :(得分:0)
您可以尝试这样
<script>
function getHtml() {
var html = document.getElementsByClassName("questions-text-alignment")[0];
alert(html.innerHTML);
}
</script>
&#13;
<div class="questions-text-alignment whiteTextWithShadow question-size-v4">
DATA HERE
</div>
<input type="button" name="click" value="click" onclick="getHtml()" />
&#13;
答案 3 :(得分:0)
您应该使用Id在此方案中选择元素 - DEMO
<script>
function changeData() {
document.getElementById('contentDiv').innerHTML= "Updated Content";
}
</script>
<body>
<div id="contentDiv">
Content Of My Div
</div> </br>
<input type = "button" onClick = "changeData()"
value = "change div text" />
</body>
答案 4 :(得分:-1)
@StevenTang我完全陷入了同样的问题,这是我的解决方案。
document.getElementsByClassName("question-size-4")
在完整的HTML文档加载时工作正常,并且只有在您拥有此类名称标识的单个DIV对象时才能正常工作。
否则,您可以通过ChromeTools获取HTMLCollection对象,以便在Web浏览器中打开。
识别单个DIV对象,包括您的班级名称和数据此处使用Firebug并选择您的数据并通过鼠标右键单击(子菜单选择)在Firebug中打开。
选择并识别您的DIV对象以包含您的班级名称后,您的数据将在console.log(Chrome工具)中打开,单击HTMLCollection,您将获得由索引(自然数)标识的每个DIV对象,如数组。 / p>
选择正确的索引(自然数),您可以通过
访问数据elements = document.getElementsByClassName("question-size-4");
DataHere = elements[correct DIV index].innerHTML or .innerText
你需要操纵
x = elements.length;
首先要知道您的班级名称所识别的任何此类DIV对象是否确实存在并已下载。
如果x = 0,则表示HTMLCollection为空,elements.innerHTML生成未定义的字符串
如果x = 1,则只有一个DIV由您的班级名称识别,所以 elements.innerHTML应该可以正常工作
如果x> 1;你有更多的DIV对象由你的类名识别,所以你需要从数组数据stracture中选择正确的对象,输入正确的索引,如上所述。
我花了几个月的时间来研究这个问题并找到正确答案。
谢谢