2016-04-15 170 views
0

我的html页面有五个按钮。我曾经使用javascript创建其中四个,使用html创建四个,但是在各种更改决定使用html创建它们之后。问题是以前我所有的按钮都可以正常工作,但在更改之后,以前由javascript创建的按钮不再有效。我为所有的按钮使用了getElementById(“”)。onclick = function(),但其中只有一个可以工作。 (我只为四个按钮之一制作功能,因为我遇到了这个问题)getelementbyid()。onclick适用于一个按钮,但不适用于另一个按钮

这里是两个按钮的JavaScript。 button1是不起作用的,我甚至尝试过在函数中只有console.log(),但它没有做任何事情。

 document.getElementById("button1").onclick = function(){var element = document.getElementById('presetPicker');element.value = this.value;providerManager.refreshProviders();}; 
     document.getElementById("DownloadXml").onclick = function(){createReport('http://192.168.0.101:8080/rest/v1/excel-reports/run/XLT_211607',verifyReport)}; 

这里是页

<body> 
    <div id="container1"> 
     <header> 
      <img src="http://www.jamk.fi/globalassets/tietoa-jamkista--about-jamk/materiaalit-esitteet-asiakaslehdet-ja-logot/jamkin-logot/jamk_fi--tunnus/jamkfi_tunnus_sininen_suomi.png" alt="Jamk logo" style="width:50%;height:50%;margin-left:25%;"> 
     </header> 
     <div id="container2"> 
      <div id="textContainer"> 
       <h2>Fosfaattifosfori PO4-P [mg/l]</h2> 
      </div> 
      <div id="Graafi"></div> 
      <div class="input"> 
       <div id="buttonContainer1"> 
        <ul id="buttonList" class="timeForm"> 
         <input id="button1" type="button" class="buttonGroup1" value="Previous day" 
         ><input id="button2" type="button" class="buttonGroup1" value="Previous week" 
         ><input id="button3" type="button" class="buttonGroup1" value="Previous month" 
         ><input id="button4" type="button" class="buttonGroup1" value="Previous year"> 
        </ul> 
       </div> 
       <div id="buttonContainer2"> 
        <div id="list"> 
         <ul id="downloadList"> 
         <input id="DownloadXml" type="button" value="Download" /> 
         </ul> 
        </div> 
        <div id="download_div"> 
         <img id="loading_gif" src="/modules/dashboards/web/public/359.gif" alt="Loading" style="display:block;"> 
        </div> 
       </div> 
       <iframe id="download_frame" style="display:none;"></iframe> 
      </div> 
      <div class="testi"> 
       <select id="presetPicker" class="testi" ></select> 
      </div> 
      <footer> 
      </footer> 
     </div> 
    </div> 
</body> 
+1

许多功能都丢失了。 – Rayon

+0

'verifyReport'后面缺少';'' –

+0

我的不好。带有verifyReport的按钮可以正常工作,但是按下按钮时,按钮上的按钮根本不起反应。我实际上只用这种格式对它进行了测试:document.getElementById(“button1”)。onclick = function(){console.log('test')}但是这也不起作用。因此,为了清楚起见,问题在于另一个按钮在被推动时会发生反应,但另一个按钮根本没有任何反应 – Nyoa

回答

0

的HTML部分通过增加一个选项<option value="Previous day">Previous day</option>的选择,你的代码再次工作。所以无论是这个问题,还是我无法检查的功能providerManager.refreshProviders();都会给你带来问题。

0

你能否提供一个jsFiddle的例子? 我想你是在绘制DOM元素之前加载脚本的。 也许$(document).ready()应该解决。

0

我发现了这个问题。看起来代码本身没有问题,但我使用的是Firefox Web控制台进行调试,出于某种原因,它没有注册任何console.log()命令。使用浏览器控制台进行调试后,我找到了调试数据

感觉现在很惭愧

编辑:我应该删除的问题还是让它留在这儿要提醒每一个开发者开始怀疑他们的调试工具?

相关问题