我的问题恰好与之前发布的帖子相反:
How do I prevent a parent's onclick event from firing when a child anchor is clicked?
我有一个“父”页面,它将动态加载DIV的innerHTML和“外部”HTML文档 . 这很好 .
我还有一个Search函数,它查看所有'external' HTML文档的文本,看它是否找到一个(或多个)包含SearchText的文档 .
如果找到一个(或多个),则创建一个新的HTML页面:SearchResults.htm .
在SearchResults.htm中,它将'found'文档列为链接 - 每个文档都有自己的onclick()方法,然后在同一个DIV的innerHTML中显示新的SearchResults HTML文档 .
显示器本身工作正常 .
'Child'页面链接示例:
<a href = "#" onclick = "DisplayDocument('1-Disposition-4-Generate
Single Letter.htm')" href = "#">Disposition-Generate Single Letter</a>
但是js函数DisplayDocument()驻留在“父”页面中 .
我的问题是,当我点击'Child'页面链接时,似乎它开始在'Child'页面中查找js函数,其中根本没有js函数,它似乎永远不会尝试在'父母'页面 .
我怎么能够:
1)防止onclick在'Child'页面内查看?
2)确保在单击子锚点时将触发'Parent' s onclick事件?
谢谢
1 回答
再一次看起来我将不得不回答我自己的问题 .
当我是
我将SearchResults HTML文档代码放入HTML对象中,然后将Object放入innerHTML中 .
当我加载“外部”HTML文档时,这工作正常,但它不适用于其中包含链接的SearchResults文档 - 每个文档都有自己的onClick() .
我发现我不需要创建一个SearchResults文档,而只需要将“原始”HTML代码(代表SearchResults)加载到innerHTML中,而不是在HTML对象中,
然后我能够在SearchResults链接上成功执行js代码 .
希望这可能会帮助其他人面临同样的问题 .