Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript代码问题,来自Github的JSON请求_Javascript_Html_Json - Fatal编程技术网

javascript代码问题,来自Github的JSON请求

javascript代码问题,来自Github的JSON请求,javascript,html,json,Javascript,Html,Json,我有个问题要解决。 我对JS还是很陌生,还学习语法。我正在尝试修改某人的脚本,该脚本是为返回github存储库中的所有存储库而构建的(未经修改的可以正常工作)。 我试图修改它,以仅返回具有指定主语言(即“Matlab”)的存储库。到现在为止,我可能已经把它彻底杀光了 $(function () { var lang = 'Matlab'; var lang2 = '#' + lang; $('#' + lang).html('Loading...'); var username =

我有个问题要解决。 我对JS还是很陌生,还学习语法。我正在尝试修改某人的脚本,该脚本是为返回github存储库中的所有存储库而构建的(未经修改的可以正常工作)。 我试图修改它,以仅返回具有指定主语言(即“Matlab”)的存储库。到现在为止,我可能已经把它彻底杀光了

 $(function () {
 var lang = 'Matlab';
 var lang2 = '#' + lang;
 $('#' + lang).html('Loading...');

 var username = 'lallers';
 var requri = 'https://api.github.com/users/' + username;
 var repouri = 'https://api.github.com/users/' + username + '/repos';
 requestJSON(requri, function (json) {
     var fullname = json.name;
     var username = json.login;
     var aviurl = json.avatar_url;
     var profileurl = json.html_url;
     var location = json.location;
     var followersnum = json.followers;
     var followingnum = json.following;
     var reposnum = json.public_repos;
     var email = json.email;
     if (fullname == undefined) {
         fullname = username;
     }
     var outhtml = '<div class="repolist clearfix"><ul>';

     var repositories;
     $.getJSON(repouri, function (json) {
         repositories = json;
         outputPageContent();
     });

     function outputPageContent() {
         if (repositories.length == 0) {
             outhtml = outhtml + '<p>No repos!</p></div>';
         } else {
             $.each(repositories, function (index) {
                 if (repositories[index].language == lang) {
                     outhtml = outhtml + '<li><a href="' + repositories[index].html_url + '" target="_blank">' + repositories[index].name + '</a></li>';
                 } else {
                     return true;
                 }
             }); // end each statement
             outhtml = outhtml + '</ul></div>';
         } // end else statement
         $('#' + lang).html(outhtml);
     } // end else statement

 }); // end requestJSON Ajax call

 function requestJSON(url, callback) {
     $.ajax({
         url: url,
         complete: function (xhr) {
             callback.call(null, xhr.responseJSON);
         }
     });
 }
});
$(函数(){
var lang='Matlab';
变量lang2='#'+lang;
$('#'+lang).html('Loading…');
var用户名='lallers';
var requri=https://api.github.com/users/“+用户名;
var repouri=https://api.github.com/users/“+用户名+”/repos”;
请求json(请求URI,函数(json){
var fullname=json.name;
var username=json.login;
var aviurl=json.avatar\u url;
var profileurl=json.html\u url;
var location=json.location;
var followersnum=json.followers;
var follownum=json.following;
var reposum=json.public\u repos;
var email=json.email;
如果(全名==未定义){
全名=用户名;
}
var outhtml=“
    ”; var库; $.getJSON(repouri,函数(json){ repositories=json; outputPageContent(); }); 函数outputPageContent(){ if(repositories.length==0){ outhtml=outhtml+“无回购!

    ”; }否则{ $.each(存储库、函数(索引){ if(存储库[index].language==lang){ outhtml=outhtml+'
  • '; }否则{ 返回true; } });//结束每个语句 outhtml=outhtml+'
'; }//end else语句 $('#'+lang).html(outhtml); }//end else语句 });//结束请求JSON Ajax调用 函数requestJSON(url,回调){ $.ajax({ url:url, 完成:函数(xhr){ callback.call(null,xhr.responseJSON); } }); } });
glang
包含jQuery对象。我不理解您在代码中使用它的方式。您将要搜索的语言设置在哪里?看起来您也在使用
glang
变量来实现这一点。@Barmar如果我是诚实的,我不知道通常如何实现这些。我来自于使用Matlab,我自己也在学习。我试图用
glang
术语做的是将其用作我搜索的参数(如您在第二个问题中所问)。这个脚本应该运行,用它们的语言找到所有repo=
glang
,并将它们返回到我在页面上用id=
glang
标记的div元素,也就是说,我制作了一个
,然后脚本运行并将输出放在该div元素中。您如何将该参数传递给函数
$(function()…)
$(document.ready(function()…)
的缩写,它接收的参数是
jQuery
对象,而不是来自DOM的任何内容。如果您有以语言命名的div,那么您可能应该在这些div上编写一个click处理程序,并从ID中获取参数。然后编写
$(“.lang”)。单击(function(){lang=this.id;…})