我目前正在努力解决网站上的 AJAX 相关问题。
目标如下:
有一个“简单”的 HTML 页面,其中包含一些链接和内容。
如果您单击一个链接,我想打开一个包含链接(来自 href)的文件,该文件包含在覆盖到页面的新 div 中。来自页面的内容当然是通过 AJAX 加载到新的 div(覆盖的)中。
在这个新的覆盖 div 中,我想添加一些通常已经可以工作的 JS 代码。
无论如何,问题是在我的特定情况下,无法以一种易于使用的方式访问每个 AJAX 加载的页面中的 DOM 元素。到目前为止,我得到了以下代码:
$$('.add-exercise').addEvent('click', function(e) {
var request_exercise_add = new Request.HTML({
'method' : 'post',
'url' : e.target.get('href'),
onSuccess : function(responseTree, responseElements, responseHTML, responseJavaScript) {
// i know i can access responseElements here..
}
});
request_exercise_add.send('s=true');
return false;
});
我知道我可以访问 responseElements 中返回的元素,但包含的网站上的逻辑有点复杂,因此应该可以在动态加载页面的 HTML 代码中添加 JS。请注意,JS 也无法添加到该head
部分,因为它不知道在 dom-ready 事件之后加载的元素。