0

我一直在尝试在页面加载时从 html 正文中调用 4 个 JS 函数。这些函数中的每一个都调用 JSP servlet 从数据库中获取数据并填充到相应的列表框中。我正在尝试预填充列表框的编辑屏幕上工作。

我正在尝试这样的事情:

      //call the JS to prepopulate the metadata
    function populateOnPageLoad(){
        populateA(); 
        populateB();
        populateC();
        populateD();
    } 

我还尝试在 body onload 中直接调用所有 4 个函数。似乎它只能调用 populateD() 并在列表框中显示数据。我已经在插入操作中测试了其中的每一个,并且 JSP servlet 工作正常。我什至更改了这些函数的顺序以检查它是否只调用最后一个函数,但它似乎并没有那样工作。

这可能是什么问题以及可能的解决方案?

谢谢!

4

3 回答 3

0

您应该查看window.onload而不是document.body.onload.
此外,而不是设置window.onload使用window.addEventListener('load',populateOnPageLoad,false);

window.addEventListener('load',populateA,false);
window.addEventListener('load',populateB,false);
window.addEventListener('load',populateC,false);
window.addEventListener('load',populateD,false);

如果您使用 ajax,请确保您没有覆盖XMLHttpRequest以前调用的对象(即确保它们不共享范围/变量名称)

于 2012-09-05T16:26:02.917 回答
0

我在加载页面时将记录 ID(我正在尝试编辑)传递给 populateOnPageLoad()。当我这样做时,它将先前记录中的相关数据填充到相应的列表框中

于 2012-10-30T22:43:25.587 回答
0

尝试这个,

function populateOnPageLoad(){
    setTimeOut(populateA(),500); 
    setTimeOut(populateB(),500);
    setTimeOut(populateC().500);
    setTimeOut(populateD(),500;
} 
于 2012-10-16T14:10:27.530 回答