![](/img/trans.png)
[英]Svelte Jest test case making document.getElementId as null
[英]document getelementid is returning null
我得到document.getElementById("#toHide")
是 null。 如何解决这个问题? 如何将此语句转换为 jquery?
html:
<form wicket:id="safeForm" class="clearfix" />
<div id="toHide" class="pb-text-align-center">
<img id="loadingImg" src="my image location" style="margin-left: auto; margin-right: auto;"/>
</div>
Java 代码在字符串缓冲区中创建 JavaScript 代码:
if(flag == false){
flag = true;
buffer.append("$('#toHide').doTimeout(1000, ");
buffer.append("function() { ");
buffer.append("$('#").append(component.getMarkupId()).append("').submit(");
buffer.append(");");
buffer.append("$('#toHide').html('<img id=\"loadingImg\" src=\"../../img/load.gif\" style=\"margin-left: auto; margin-right: auto;\"/>'); ");
buffer.append("});\n");
}
else{
buffer.append("\n document.getElementById(\'#toHide\').style.display='none';\n");
}
buffer.append("</script>");
2) 我已经在全球范围内声明了 flag=false。 我第一次验证标志并允许输入上面显示的 if 块。 但在此之后,图像仍然显示在下一页。 为什么? 我需要做些什么改变?
当您使用document.getElementById
时,您不需要#
document.getElementById('toHide').style....
对于 jQuery,请尝试:
buffer.append("\n $(\'#toHide\').hide();\n");
代替
buffer.append("\n document.getElementById(\'#toHide\').style.display='none';\n");
#
不是 id 的一部分,所以你应该使用:
document.getElementById('toHide'). 至于 jquery 部分:
$("#toHide").hide()
这次是#
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.