如何检查Div是否为空然后执行操作

时间:2012-10-12 17:04:49

标签: javascript html redirect contains

我正在使用HTML5,CSS和&amp ;;构建个人助理的的Javascript

这就是我当前的问题。

我有一个<div>,其中包含脚本,其中包含询问问题时的答案以及问题是否匹配问题。

我需要一个脚本来检查此div是否为空,在 Javascript 中,而不是 jQuery

我需要检查div是否为空,因为这意味着没有响应。

然后将其重定向到错误页面。

问题&amp;对它的回应如下:

    <script type="text/javascript">
{
var q = getValue("q");
var name = getValue("name");
}
if (q == 'Whats+up') {
document.write("Not much " + name + ".");
}
else {

}
</script>

这是我尝试的最后一个代码:

            <script>

    var theDiv = document.getElementById("responce");
    var q = getValue("q");
    if(theDiv.innerHTML == ''){
    window.location = 'error.html?name=Brandon&q='+q;
    }
  </script>

2 个答案:

答案 0 :(得分:1)

试试这个

<script type="text/javascript">
{
var q = getValue("q");
var name = getValue("name");
}
if (q == 'Whats+up') {
document.write("<div id='response_text'>"+"Not much " + name + "."+"</div>");
}
else {

}
</script>

然后:

<script>

var theDiv = document.getElementById("response_text");
var q = getValue("q");
if(theDiv==null || theDiv.innerHTML == ''){
window.location = 'error.html?name=Brandon&q='+q;
}
</script>

话虽如此,使用ajax可能有更好/更可扩展的方法。

答案 1 :(得分:1)

如果script中没有div以外的其他元素,您可以检查:

<script>
    var theDiv = document.getElementById('responce'),
        q = getValue('q'),
        scripts = theDiv.getElementsByTagName('SCRIPT').length;
    if (theDiv.children.length - scripts === 0) {
        window.location = 'error.html?name=Brandon&q=' + q;
    }
</script>

但是,我建议您删除所有内联脚本,并将它们放在文档的head中,或者放在结束​​body标记之前。

修改

快速解决方法是将script移到#responce下方。