Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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 动态显示默认选项时";“未找到任何结果”;在选择2 jquery插件中_Javascript_Jquery_Jquery Select2_Select2 - Fatal编程技术网

Javascript 动态显示默认选项时";“未找到任何结果”;在选择2 jquery插件中

Javascript 动态显示默认选项时";“未找到任何结果”;在选择2 jquery插件中,javascript,jquery,jquery-select2,select2,Javascript,Jquery,Jquery Select2,Select2,我想使用Select2插件加载远程数据并自定义选择框。我遵循文档,它就像一个符咒。但当用户找不到匹配项时,会显示消息:“找不到结果。” 我的要求是在用户找不到匹配项时显示默认选项,而不是消息,类似于此 函数formatRepo(repo){ if(回购加载)返回回购文本; var标记=“”+ '' + '' + ''+repo.full_name+''+ ''; if(回购说明){ 标记+=''+回购说明+''; } 标记+=''; 返回标记; } 功能选择(repo){ 返回repo.full

我想使用Select2插件加载远程数据并自定义选择框。我遵循文档,它就像一个符咒。但当用户找不到匹配项时,会显示消息:“找不到结果。”

我的要求是在用户找不到匹配项时显示默认选项,而不是消息,类似于此

函数formatRepo(repo){
if(回购加载)返回回购文本;
var标记=“”+
'' +
'' +
''+repo.full_name+''+
'';
if(回购说明){
标记+=''+回购说明+'';
}
标记+='';
返回标记;
}
功能选择(repo){
返回repo.full|u name | repo.text;
}
$(文档).ready(函数(){
$(“.js数据示例ajax”)。选择2({
阿贾克斯:{
url:“https://api.github.com/search/repositories",
数据类型:“json”,
延误:250,
数据:函数(参数){
返回{
q:params.term,//搜索项
页码:params.page
};
},
processResults:函数(数据,页面){
//将结果解析为Select2所需的格式。
//因为我们使用的是自定义格式函数,所以不需要
//更改远程JSON数据
返回{
结果:数据项
};
},
缓存:真
},
escapeMarkup:function(markup){return markup;},//让自定义格式化程序工作
最小输入长度:1,
templateResult:formatRepo,//为简洁起见省略,请参阅此页的源代码
templateSelection:formatRepoSelection//略去为简洁起见,请参阅此页的源代码
});
});   

我用select2插件制作了一个加载远程数据的插件。请有人告诉我如何做到这一点?

您应该这样对待您在“processResults”函数中提到的情况():

函数formatRepo(repo){
if(回购加载)返回回购文本;
var标记=“”+
'' +
'' +
''+repo.full_name+''+
'';
if(回购说明){
标记+=''+回购说明+'';
}
标记+='';
返回标记;
}
功能选择(repo){
返回repo.full|u name | repo.text;
}
$(文档).ready(函数(){
$(“.js数据示例ajax”)。选择2({
阿贾克斯:{
url:“https://api.github.com/search/repositories",
数据类型:“json”,
延误:250,
数据:函数(参数){
返回{
q:params.term,//搜索项
页码:params.page
};
},
processResults:函数(数据,页面){
//将结果解析为Select2所需的格式。
//因为我们使用的是自定义格式函数,所以不需要
//更改远程JSON数据
如果(data.items.length>0){
console.log(数据项);
返回{
结果:数据项
};
}
else返回{results:[{'loading':false,'description':'others','name':'others','text':'others','full_name':'Some name'}]}
},
缓存:真
},
escapeMarkup:function(markup){return markup;},//让自定义格式化程序工作
最小输入长度:1,
templateResult:formatRepo,//为简洁起见省略,请参阅此页的源代码
templateSelection:formatRepoSelection//略去为简洁起见,请参阅此页的源代码
});
});   

选择一个值。。。。。。
其他

Others选项在没有结果时出现,但为什么不能选择?我需要让它为用户选择,以便我可以在后端获得价值。
    function formatRepo (repo) {
    if (repo.loading) return repo.text;

    var markup = '<div class="clearfix">' +

    '<div clas="col-sm-10">' +
    '<div class="clearfix">' +
    '<div class="col-sm-6"><b>' + repo.full_name + '</b></div>' +
    '</div>';

    if (repo.description) {
      markup += '<div>' + repo.description + '</div>';
    }

    markup += '</div></div>';

    return markup;
  }

  function formatRepoSelection (repo) {
    return repo.full_name || repo.text;
  }

$(document).ready(function(){

    $(".js-data-example-ajax").select2({
      ajax: {
        url: "https://api.github.com/search/repositories",
        dataType: 'json',
        delay: 250,
        data: function (params) {
          return {
            q: params.term, // search term
            page: params.page
          };
        },
        processResults: function (data, page) {
          // parse the results into the format expected by Select2.
          // since we are using custom formatting functions we do not need to
          // alter the remote JSON data
          return {
            results: data.items  
          };
        },
        cache: true
      },
      escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
      minimumInputLength: 1,
      templateResult: formatRepo, // omitted for brevity, see the source of this page
       templateSelection: formatRepoSelection // omitted for brevity, see the source of this page  

    });
  });