2016-02-28 49 views
0

我的Javascript代碼在開始時調用,而不是在按下按鈕時調用。類似的問題並沒有解決我的問題。Javascript按鈕在開始時調用,而不是在

<button type="button" onclick="anzeigen()">Notizen anzeigen</button> 

我試過「anzeigen()」也沒有引號,但它也沒有幫助。

<script type="text/javascript" charset="utf-8"> 
    $(document).ready(function() { 
      function anzeigen() { 
      $("#ausgabe").empty(); 
      <% System.out.println("test");%> 
       $.ajax({ 
        url: "http://localhost:8080/Notizblock/rest/" +  
        "notizblock/notizen", 
        type: "GET", 
        dataType: "json", 
        success: function(data) { 

         $.each(data, function(i, data1) {  
          // Erstellt neues Element  
          var p = $("<p>");  
          // Zugriff aus JSON - Objekt  
          p.append(data1.nnummer + " " + data1.tnummer);  
          $("#ausgabe").append(p);  
          }); 

        } 
       }); 
      }; 
     }); 
</script> 

無論我嘗試什麼,函數(和Syso)立即被調用。

編輯: 好吧,實際上我的服務器有問題或其他...我現在從w3schools複製粘貼代碼示例,它也不工作...測試三個瀏覽器... 任何人都知道如何解決該問題?

+1

第一,我看到一個錯誤,對於anzeigen功能的結束支架有一個分號。另外,我會拿出document.ready()函數,因爲當你指向一個事件時,這是無關緊要的。做到這一點,並告訴我你的結果! –

+0

謝謝,但仍然是相同的結果...我不明白...我嘗試了很多不同的方式,從stackoverflow和w3schools,似乎沒有工作... – ToTom

+0

只是一個問題,我不完全得到標題,當按鈕被點擊時,你的功能仍然會被調用嗎? – Adrian

回答

1

而不是將JavaScript的直接在HTML,建議做這樣的事情:

你傳遞給函數的document.ready匿名函數
<button type="button" id="anzeigen">Notizen anzeigen</button> 

<script type="text/javascript" charset="utf-8"> 
$(document).ready(function() { 
     $('#anzeigen').onclick(function() { 
     $("#ausgabe").empty(); 
     <% System.out.println("test");%> 
      $.ajax({ 
       url: "http://localhost:8080/Notizblock/rest/" +  
       "notizblock/notizen", 
       type: "GET", 
       dataType: "json", 
       success: function(data) { 

        $.each(data, function(i, data1) {  
         // Erstellt neues Element  
         var p = $("<p>");  
         // Zugriff aus JSON - Objekt  
         p.append(data1.nnummer + " " + data1.tnummer);  
         $("#ausgabe").append(p);  
         }); 

       } 
      }); 
     }; 
    }); 
</script> 
+0

謝謝,但仍然是相同的結果...我不明白...我嘗試了很多不同的方式從stackoverflow和w3schools,似乎沒有工作... – ToTom

0

的東西都會被調用時,DOM加載和激發負載事件。使用jQuery,您可以在與dom元素交互之前等待此事件。

您正在使用按鈕的onclick屬性分配您的操作,因此您無需等待此事件。

編輯:

<button type="button" onclick="anzeigen()">Notizen anzeigen</button> 

<script> 
    function anzeigen() { 
    $("#ausgabe").empty(); 
    $.ajax({ 
     url: "http://localhost:8080/Notizblock/rest/" +  
     "notizblock/notizen", 
     type: "GET", 
     dataType: "json", 
     success: function(data) { 
      $.each(data, function(i, data1) {  
       // Erstellt neues Element  
       var p = $("<p>");  
       // Zugriff aus JSON - Objekt  
       p.append(data1.nnummer + " " + data1.tnummer);  
       $("#ausgabe").append(p);  
      }); 
     } 
    }); 
    } 
</script> 
+0

它仍然沒有工作後,我刪除了準備功能,雖然... – ToTom

+0

parens是必需的。 – dewd

+0

@dewd是隻是雙重檢查了文檔 –

相關問題