Javascript 使用加载图标切换元素
我想做的是当用户单击按钮时,将按钮的图像更改为加载图标 我的javascript函数如下所示-Javascript 使用加载图标切换元素,javascript,jquery,Javascript,Jquery,我想做的是当用户单击按钮时,将按钮的图像更改为加载图标 我的javascript函数如下所示- function GenerateDetail() { var resBtn = $('ctl00_cpMain_cntnrRoot').find("btn_generateDetail"); if (resBtn != null) { toggleElement(resBtn); } } function toggleElement(aRelEle) {
function GenerateDetail() {
var resBtn = $('ctl00_cpMain_cntnrRoot').find("btn_generateDetail");
if (resBtn != null) {
toggleElement(resBtn);
}
}
function toggleElement(aRelEle) {
if ($(aRelEle).css("display") != "none") {
addImage(aRelEle);
$(aRelEle).css("display", "none");
}
else {
$(aRelEle).prev().remove();
$(aRelEle).css("display", "inline");
}
}
function addImage(aParEle) {
var aImage = document.createElement("img");
var aSrc = "App_Themes/Images/activityloader.gif";
aImage.border = "0";
aImage.src = aSrc;
aParEle.appendChild(aImage);
}
在toggleElement中,$(aRelEle).css(“display”)未定义。为什么?”ctl00\u cpMain\u cntnrRoot'是我页面上所有元素的一个div。您使用的是html按钮标记吗。如果是这样,您可以将图像放在按钮中,并为其设置一个display=“none”样式,然后您可以在单击按钮时切换此样式。 例如:
按钮文本在这里
我认为问题在于这一行:
var resBtn = $('ctl00_cpMain_cntnrRoot').find("btn_generateDetail");
什么是ctl00\u cpMain\u cntnrRoot?这是一节课吗?那么它应该是.ctl00\u cpMain\u cntnrRoot还是一个id?那么它应该是:#ctl00_cpMain_cntnrRoot
对于find(),也是如此。btn_generatedeail是一个id还是一个类?'ctl00_cpMain_cntnrRoot'是我页面上所有元素的一个div。我试图在该div中找到该按钮。那么它是该div的类还是id?i、 e.它像(…或…太棒了,所以试试:var resBtn=$('div#ctl00cpMaincntnrRoot').find(“#btnu generatedeail”);也就是假设btngeneratedeail是一个id谢谢,它肯定能找到按钮。然而,当我输入我的toggleElement函数时,在这一行-if($(aRelEle).css(“display”)!=“none”),$(aRelEle).css(“display”)计算结果为未定义。为什么?我如何通过javascript找到img来来回切换它?我将通过它的id引用它。这样您就可以执行以下操作:document.getElementById(“loadingIcon”).style.display=“inline”或document.getElementById(“loadingIcon”).style.display=“none”;我认为这可能比创建函数更容易。
var resBtn = $('ctl00_cpMain_cntnrRoot').find("btn_generateDetail");