我们想实现一个创新的UI。我们正在做的事情如下:
- 当用户点击一个菜单项链接时,$ .get(url)被调用,我们将取出在url中引用的页面的HTML内容。
- 然后,我们将该内容填充到输出格中,然后在填充之前删除该输出格的任何内容。
这是我们实际正在做的事情的削减版本,但它的目的是说明我目前面临的问题。
实际上,当使用$ .get(url)包含纯HTML的页面时,我没有任何问题。但是,如果使用$ .get(url)获取的页面包含Ext.NET代码,那么我没有返回任何东西。
实际发生的事情是,Ext.NET代码本身调用其他脚本并在DOM中插入元素。这导致了一个问题,因为我的代码执行到之前 Ext.NET有时间插入我试图访问的内容。
因此,一个天真的尝试来解决这个问题将是等到Ext.NET完成填充页面,然后将代码执行返回到回调函数。问题是我该如何做到这一点?有没有更好的方法来实现我想要做的事情,即确保$ .get(url)完全运行它的过程,以便我的输出div正确填充?
我想我可以放弃使用iFrame的路线,但我想避免这种情况,如果可能的话,因为这会增加复杂的界面。
@ david1dMcLean:不幸的是,这不起作用,即我得到相同的结果。 – DavidS
我还没有使用EXT.net呢..但有没有办法让它等到dom被加载?不知道这是如何工作的,因为你正在调用它的页面已经被加载.. *思考*确定如何在外部页面加载后将变量设置为true ...外部页面上的js加载但不直到变量的值被设置为true。这意味着一切都被加载..你可能需要通过自定义事件实现 - > http://www.truerwords.net/articles/web-tech/custom_events.html - 是旧的,但我相信它仍然有效(没有尝试过新的IE或FF思想)。 –
@ david1dMcLean:谢谢你的输入。我也有这个计划,但我认为我需要走下iframe的路线,而且我已经遇到了可怕的事情。 – DavidS