我有一个带菜单的php页面。
菜单中的一个项目调用另一个php,它返回一个填充了数据的div
元素,插入到前一页(用户已经看到)中。
我尝试在加载后使用JavaScript修改此div内容。但是,我无法实现它。
我尝试使用ready()
方法,但由于它在加载后随机发生,因此该方法无法正常工作。
我还尝试使用我发现的load()
方法,该方法似乎在项目完全加载后触发,但我也没有完成。这就像是:
$( "#overlay #overlay_text div #panes div #tableInOverlay" ).load(function() {
alert("The table has been loaded");
});
我怎样才能实现它?
提前谢谢
编辑:为了试图说清楚
用户访问网页(文件1) - >用户点击(文件1)菜单 - >调用文件2,它创建一个带有div
元素的响应 - > (文件1)获取响应,并将其插入HTML代码中,以便显示新的div。
然后,此时,我需要(文件1)修改刚收到的div。
答案 0 :(得分:1)
插入,修改或删除元素时,不会触发任何html事件。
可能的解决方案:
1-在回调中触发自己:
$('#myDiv').load('url', function(){
$('#myDiv').trigger('foohappened')
});
$('#myDiv').on('foohappened', function(){
// modify content
});
注意:myDiv是页面上的元素,而不是通过ajax加载的元素
2-插入前更改数据
$.ajax({
success: function(data){
var loadedElement = $.parseHTML(data);
var modifiedContent = modifyContent(loadedElements);
$('#myDiv').insert(modifiedContent);
}
})
答案 1 :(得分:0)
你能试试吗?
$(window).load( function() {
// YOUR CODE HERE
});
另外,如果您知道延迟的数量,可以使用setTimeout()推迟函数