2016-03-26 122 views
1

我有一個很大的問題。 (Line:40)變量未定義Javascript + Parse.com

我想通過JS創建一個輸入按鈕,其中屬性onclick是一個參數的函數。 「onclick = goGrupa(gid)」。這不起作用。 「未捕獲的ReferenceError:gid未定義」。

下一步是函數goGrupa(id)-1參數,我現在只需要在console.log中顯示他。

有什麼問題?

JavaScript代碼:

Parse.initialize("xxx", "xxx"); 
var currentUser = Parse.User.current(); 

$(document).ready(function(){ 
    WyszukajPrzedmioty(); 
}); 

function WyszukajPrzedmioty(){ 
    var zapPrzedmioty = new Parse.Query(new Parse.Object.extend("Przedmioty")); 
    var output = "<ul>"; 
    zapPrzedmioty.include("grupy"); 

    zapPrzedmioty.equalTo("uczelnia",currentUser.get("nazwaUczelni")); 
    zapPrzedmioty.equalTo("kierunek",currentUser.get("kierunek")); 
    zapPrzedmioty.equalTo("rok",currentUser.get("rok")); 
    zapPrzedmioty.find({ 
    success:function(przedmioty){ 
     for (var i in przedmioty){ 
      console.log(i+ " przedmiot: "+przedmioty[i]); 
      var nazwaPrzedmiotu = przedmioty[i].get("nazwaPrzedmiotu"); 
      var kierunek = przedmioty[i].get("kierunek"); 
      var rok = przedmioty[i].get("rok"); 

      output += "<li><div id=\"naglowek\">"; 
     output += "<p><b style=\"font-size:20px; text-transform: uppercase;\">"+nazwaPrzedmiotu+"</b><br></p>"; 
     output += "<i>"+kierunek+"</i>, rok: <i>"+rok+"</i><br>"; 
     output += "</div>"; 

      var g = przedmioty[i].get("grupy"); 
      if (g.length > 0){ 
       output += "<br><b style=\"font-size: 20px;\"> Grupy: </b>"; 
       output += "<table>" 
       console.log("Znaleziono grupy."); 
       for (var j in g){ 
        var dziekanska = g[j].get("dziekanska"); 
        var gid = g[j].id; 
        if (g[j].get("lab") == 5){ 
         var lab = "nie dotyczy"; 
         output += "<tr><td class=\"left\">Dziekańska: "+dziekanska+"</td>"; 
         output += "<td class=\"right\"><input type=\"button\" value=\"Dołącz\" onclick=goGrupa(gid)></td></tr>"; 
        } 
        else{ 
         var lab = g[j].get("lab"); 
         output += "<tr><td class=\"left\">Dziekańska: "+dziekanska+", lab: "+lab+"</td>"; 
    // HERE IS THE PROBLEM \/ 
         output += "<td class=\"right\"><input type=\"button\" value=\"Dołącz\" onclick=goGrupa(gid)></td></tr>"; 
        } 


        console.log (j+" grupa: "+dziekanska+" "+lab+" id: "+gid); 
       } 
       output += "</table>"; 
      } 
      else{ 
       console.log("Nie ma grup"); 
       output += "</li>"; 
      } 
     } 
     $("#listaPrzedmiotowStudent").html(output + "</ul>"); 
    }, 
    error:function(e){ 
     console.log(e.message); 
    } 
}); 
} 
function goGrupa(gid){ 
    console.log(gid); 
} 

和屏幕: screen

我試圖改變這種上:

onclick=\"goGrupa("+gid+")\", onclick=\"goGrupa(gid)\", onclick=goGrupa("+gid+"), onclick=goGrupa(gid)

並沒有什麼。

回答

1

嘗試轉換"onclick=goGrupa(gid)""onclick=goGrupa(" + gid + ")"

+0

您可以通過10秒打我。 – Rajesh

+0

錯誤..未捕獲的ReferenceError:LopjBQjsxz沒有定義 我嘗試了很多方法: 的onclick = goGrupa( 「+ GID + 」) 的onclick = \「 goGrupa(GID)\」 的onclick = \ 「goGrupa(」 + gid +「)\」 並且沒有工作 –

+0

@RafałJończyk:查看生成的代碼。它應該很清楚爲什麼你會得到這個錯誤以及你需要做什麼來解決這個問題。 –