我的图像在.cs文件中定义了“a href”标签的InnerHTML,如下所示。
_divToolTipContainer.InnerHtml = "<a href=\"javascript:__doPostBack('" + btnItemThumbnail.ClientID.Replace("_", "$") + "','')\">" +
itemimage;
现在我想要的是,如果文本框为空,则将此“a href”标记“隐藏”或“设置为可见为false”,否则可以点击此选项。
我的代码如下所示,但不起作用。
var oDivA1 = document.getElementById(oElementId);
if(val === undefined || val == null || val.length <= 0){
oDivA1.style.display = "none"; // not working
}else{
oDivA1.style.display = "block"; // not working
}
oDivA1.style.display =“none”,这对整个div都不显示,而不是“a href”标记。
这可能吗?
由于
RJ
答案 0 :(得分:0)
使用firstChild
属性获取div的内部元素,假设它包含的所有HTML,如示例所示。
var oDivA1 = document.getElementById(oElementId);
var anchor = oDivA1 ? oDivA1.firstChild : null;
if(anchor && (val === undefined || val == null || val.length <= 0)){
anchor.style.display = "none";
}else{
anchor.style.display = "block";
}
阻止链接操作
var handler = function(e) { e.preventDefault(); };
if(anchor && (val === undefined || val == null || val.length <= 0)){
anchor.addEventListener('click',handler,false);
}else{
anchor.removeEventListener('click',handler,false);
}
有关浏览器兼容性和旧版浏览器的变通方法的信息,请参阅https://developer.mozilla.org/en-US/docs/DOM/element.addEventListener。