2016-03-26 18 views
1

大きな問題があります。 (行:40)変数が定義されていませんJavascript + Parse.com

属性ボタンonclickは、1つのパラメータを持つ関数で、JSによって入力ボタンを作成したいと考えています。 "onclick = goGrupa(gid)"。これは動作しません。 "Uncaught 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); 
} 

そして画面:

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

と何も: screen

私が上でこれを変更してみてください。

答えて

1

は、あなたが10秒で私を倒す"onclick=goGrupa(" + gid + ")"

+0

"onclick=goGrupa(gid)"を変換してみます。 – Rajesh

+0

エラー..キャッチされないにReferenceError:LopjBQjsxzは が定義されていない、私は方法の多くを試してください: のonclick = goGrupa( "+ GID + ") のonclick = \" goGrupa(GID)\" のonclick = \ "goGrupa(" + gid + ")\" そして何も動作していません –

+0

@RafałJończyk:生成されたコードを見てください。なぜあなたはそのエラーを取得し、それを修正するために何をする必要があるのか​​ははっきりしているはずです。 –

関連する問題