下一页工作时,我需要做一个“ onclick”“加载页面”

时间:2019-04-20 19:09:52

标签: javascript onclick

我有一个提交到下一页的表格。

当前,下一页在准备加载该页面之前会执行几个命令。

现在会发生什么: 表格通过Get或Post提交 许多秒都没有发生任何事情。印象是页面已挂起。 仅在发生一系列事件(在这种情况下,使用imagemagick创建PDF)后,才会显示下一页,最后只有在所有执行之后才加载下一页。 我确实尝试添加一些JavaScript,以在下一页上显示“正在加载”消息,该消息有效,但仅在创建PDF之后。它不能克服“挂”的外观。由于某些原因,我无法进入此处,因此无法编写脚本脚本,请尝试这样做。

我想要什么: 我不是JavaScript专家,所以请原谅我,但是我相信我可以创建一个onclick事件,该事件在仍提交表单的同时(这很重要)显示“正在加载”消息?这意味着单击提交仍然会触发传统的下一页,但是javascript fu将导致出现“正在加载”消息,最好将其覆盖。当然,一旦下一页加载,现在覆盖的消息就会消失。

我已经看到一些解决这种问题的方法,但是从来没有一条javascript消息(虽然仍在提交表单)

简而言之,我希望现有的“提交”按钮能够像现在一样继续工作,但是该按钮需要触发取消隐藏“正在加载”消息的第二个功能

如果有人能向我展示如何执行此操作,请先感谢。

我尝试了此方法,但正如我所说,没有javascript大师。我把它拼凑成其他地方和发现的东西,但没有用。

消息

<div id="loading" style="display:none;>
    <table border=0 style="width: 30%"><tr><td><hr></td></tr><tr><td style="text-align: center;">
    <span style="color:#666; font-weight:bold"><br/><br/>Please wait , Thinking...</span></br></br><br/>
    <img src="../images/spinner.gif"></td></tr></table>
</div>

按钮

<button id="makemppdfnow" onclick="javascript:loadingWait();" style="float: left; height: 36px; background-image: url(images/makepdf btn.png); background-repeat: no-repeat; background-position: left;padding left: 39px; color:#666; font-weight:bold" type="submit" formaction="/mkmppdf.php">'.$makepdf.'</button>

JavaScript

function loadingWait() {
    if (document.getElementById('makemppdfnow').click) {
        document.getElementById('loading').style.visibility = 'visible';
    } else {
        document.getElementById('loading').style.visibility = 'hidden';
    }

2 个答案:

答案 0 :(得分:0)

您忘记了括号。

我认为您应该这样做:

onclick =“ loadingWait()”

代替此:

onclick =“ javascript:loadingWait();”

告诉我是否解决了问题。

答案 1 :(得分:0)

如果您的问题是关于为什么“ loading” div没有显示,请在下面找到脚本并进行相应的更改。您已将display:none设置为“ loading” div,因此必须更改显示样式,而不是更改可见性。

<script>
boolean =false;
function loadingWait() {
boolean = true;

if(boolean ==true){
        document.getElementById('loading').style.display = 'block';
                  } 
else {
       document.getElementById('loading').style.display = 'none';
       boolean = false;
     }
    }
    </script>

并确实更改onclick =“ javascript:loadingWait();”来onclick =“ loadingWait();”