function myfunction(id){
//code
$("#mydiv").hide();
};
但'mydiv'是动态添加的,而且该功能无效。
答案 0 :(得分:0)
确保您在添加$("#mydiv").hide();
后致电#mydiv
。如果您已添加#mydiv
。
答案 1 :(得分:0)
由于您共享的部分代码似乎没问题,我怀疑您的代码还有其他问题。
尝试debug它。这并不难,让你自己找出错误要快得多,而不是真的很难看你的代码。
首先,如果能够了解您是否达到了相关的代码行,那么首先要知道。您可以打开开发人员控制台并在相关行中添加断点,也可以在代码中添加alert("this line is reached and executed")
,然后您将知道是否已到达并执行该行。
如果你到达了相关的行,最好知道那里发生的事情:
例如,知道$("#mydiv")
是否匹配任何东西都会很好。如果您害怕开发者控制台,可以尝试:alert($("#mydiv").length)
。如果它为0,则没有任何匹配项,如果它是1
,则在调用$("#mydiv").hide()
时匹配将隐藏的元素。如果是0
,则表示您无法匹配元素。这意味着您的DOM中目前没有ID为mydiv
的元素。如果它应该被添加到dinamically或者从一开始就应该在那里并不重要,它不存在。你可能在id中犯了拼写错误。
由于您匹配通过其id动态添加的内容,因此您可能已经拥有ID为mydiv
的元素。如果有更多具有相同ID的元素,则只匹配第一个元素!具有相同ID的多个元素不仅仅是不好的做法,它也是无效的,并且可能会导致更多的错误和麻烦。
如果您确定匹配正确的元素并且在调用$("#mydiv").hide()
时没有隐藏它,那么总是有办法查找问题:例如,如果您打开javascript开发人员控制台,则会出现javascript错误将在那里列出。如果它们与此问题有关,请务必检查它们。
快乐的虫子狩猎!