Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.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 如何为我的下拉选项设置自定义优先级_Javascript - Fatal编程技术网

Javascript 如何为我的下拉选项设置自定义优先级

Javascript 如何为我的下拉选项设置自定义优先级,javascript,Javascript,我正在从dackend获取作为JSON字符串对象的下拉值。我的JSON字符串包含两个值,一个是id,另一个是e_名称。现在我正在下拉列表中显示e_名称 script language="JavaScript"> function getEnvNames(result){ $("#environmentDetails").empty(); var data = JSON.parse(result); $.each(data, function(key, value)

我正在从dackend获取作为JSON字符串对象的下拉值。我的JSON字符串包含两个值,一个是id,另一个是e_名称。现在我正在下拉列表中显示e_名称

script language="JavaScript">
function getEnvNames(result){
    $("#environmentDetails").empty();
    var data = JSON.parse(result);
    $.each(data, function(key, value)
    {

        $("#environmentDetails").append("<option>" + value.environments_name  + "</option>");

    });

}
</script>
像这样,e_名称值就在那里。我在下拉列表中显示这些值

    HCL - Demo
   IBM1 - Test
    ECO1 - Development
    MindSpace - Development
    ABC - Demo
   CDF - Test
   FGR - Production
   RFGGDDF - Production
如果我的下拉列表中包含类似pro(FGR-Production)的内容,我会优先考虑。如果我的下拉列表中包含Development(MindSpace-Development),那么我必须优先考虑第二个内容。例如test-3rd priority Demo (ABC-演示)。第四优先级测试(CDF-测试)

我的疑问是如何为我的下拉选项设置自定义优先级

像这样,我从后端获取JSON字符串对象

@RequestMapping(value = "/environments", method = RequestMethod.POST)
      public @ResponseBody String getEnvironmentNames(@RequestParam String selectedcustomername) throws SQLException {
        System.out.println("selectedcustomername"+selectedcustomername);
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("environments", new Environments());
         List<Environments>  environmentnamesList= loginD.getEnvironments(selectedcustomername);
         Gson gson = new Gson();
         System.out.println("gson"+gson);
         String jsonString = gson.toJson(environmentnamesList);
         return jsonString;
    }
@RequestMapping(value=“/environments”,method=RequestMethod.POST)
public@ResponseBody String getEnvironmentNames(@RequestParam String selectedcustomername)引发SQLException{
System.out.println(“selectedcustomername”+selectedcustomername);
ModelAndView ModelAndView=新建ModelAndView();
addObject(“环境”,新环境());
列表环境名称列表=loginD.getEnvironments(selectedcustomername);
Gson Gson=新的Gson();
系统输出打印项次(“gson”+gson);
字符串jsonString=gson.toJson(环境名称列表);
返回jsonString;
}

这样,您可以为下拉选项设置自定义优先级。
现在我想你的问题可以解决了

    function getEnvNames(result) {$("#environmentDetails").empty();
    var data = new Array(), newarr = new Array();
    data = JSON.parse(result);
    $.each(data, function (key, value) {
        for (var i = 0; i < data.length; i++) { if (data[i].search("pro") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].search("dev") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].search("test") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < newarr.length; i++) { $("#environmentDetails").append("<option>" + newarr[i] + "</option>");}
    });}

 Output

 infosys - pro  
 ibm - pro  
 hcl - dev  
 ibm -  test  
 emc - test
函数getEnvNames(result){$(“#environmentDetails”).empty();
var data=new Array(),newarr=new Array();
data=JSON.parse(结果);
$。每个(数据、函数(键、值){
对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;}
对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;}
对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;}
对于(var i=0;i

我正在我的系统中运行此代码,它正在工作

   function getEnvNames(result) {
    debugger;
    $("#environmentDetails").empty();
    var data = new Array(), newarr = new Array();
    data = JSON.parse(result);
    if(data.length>0){
    for (var i = 0; i < data.length; i++) { if (data[i].search("pro") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < data.length; i++) { if (data[i].search("dev") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < data.length; i++) { if (data[i].search("test") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < newarr.length; i++) { $("#environmentDetails").append("<option>" + newarr[i] + "</option>"); }}
    window.event.returnValue = false;
}
函数getEnvNames(结果){ 调试器; $(“#环境详细信息”).empty(); var data=new Array(),newarr=new Array(); data=JSON.parse(结果); 如果(数据长度>0){ 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i
现在检查一下,我拿走了你的杰森线。工作正常

    function getEnvNames() {
    debugger;
    $("#environmentDetails").empty();
    var data = new Array(), newarr = new Array();
    var data = [{ "id": 3272, "company_name": "HCL - Demo" }, { "id": 3255, "company_name": "IBM1 - Test" }, { "id": 3257, "company_name": "ECO1 - Development" }, { "id": 3253, "company_name": "MindSpace - Development" }, { "id": 3256, "company_name": "ABC - Demo" }, { "id": 3258, "company_name": "CDF - Test" }, { "id": 3205, "company_name": "FGR - Production" }, { "id": 3208, "company_name": "RFGGDDF - Production"}];
    if (data.length > 0) {
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Production") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Development") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Test") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < newarr.length; i++) { $("#environmentDetails").append("<option>" + newarr[i].company_name + "</option>"); }
    }
    window.event.returnValue = false;
}
函数getEnvNames(){ 调试器; $(“#环境详细信息”).empty(); var data=new Array(),newarr=new Array(); var数据=[{“id”:3272,“公司名称”:“HCL-Demo”},{“id”:3255,“公司名称”:“IBM1-Test”},{“id”:3257,“公司名称”:“ECO1-Development”},{“id”:3253,“公司名称”:“MindSpace-Development”},{“id”:3256,“公司名称”:“ABC-Demo”},{“id”:3258,“公司名称”:“CDF-Test”},{“id”:3205,“公司名称”:“FGR-生产”},{“id”:3208,“公司名称”:“RFGGDDF-生产”}]; 如果(data.length>0){ 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i0{newarr.push(data[i]);data.splice(i,1);i=i-1;} 对于(var i=0;i 输出

<select name="environmentDetails" id="environmentDetails"><option>FGR - Production</option><option>RFGGDDF - Production</option><option>ECO1 - Development</option><option>MindSpace - Development</option><option>IBM1 - Test</option><option>CDF - Test</option></select>
FGR-ProductionRFGGDDF-ProductionECO1-DevelopmentMindSpace-DevelopmentIBM1-TestCDF-Test

有人能帮我吗。什么是DropDownList 1.我有一个下拉列表…刚才我更新了我的整个代码,我的问题也解决了。请看一看。相应地更新我。如果您从后端获取数据,那么在将数据转换为json格式之前,您可以轻松排序。仅在jquery func中将数据分配给ddl我更新了关于如何获取JSON字符串对象的问题。您能告诉我如何在后端进行过滤吗?您好,我在.NET技术领域工作,我可以在后端使用Linq to Sql来实现这一点,但我认为,您不会得到。所以我在jquery中为您提供解决方案,只是为了让您能够获取,。我获得------数据[I].search不是一个功能。如果我尝试打印数据,我不会得到任何东西。例如警报(“dataaa”+数据);我的输出仅为dataaa。您好,我修改了代码中的一些错误,请尝试一下。并确保结果变量字符串包含任何值;我认为,无论您从后端返回的值是什么,它都是空的。刚才我非常清楚地更新了我的问题。您能回答一下吗
   function getEnvNames(result) {
    debugger;
    $("#environmentDetails").empty();
    var data = new Array(), newarr = new Array();
    data = JSON.parse(result);
    if(data.length>0){
    for (var i = 0; i < data.length; i++) { if (data[i].search("pro") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < data.length; i++) { if (data[i].search("dev") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < data.length; i++) { if (data[i].search("test") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
    for (var i = 0; i < newarr.length; i++) { $("#environmentDetails").append("<option>" + newarr[i] + "</option>"); }}
    window.event.returnValue = false;
}
    function getEnvNames() {
    debugger;
    $("#environmentDetails").empty();
    var data = new Array(), newarr = new Array();
    var data = [{ "id": 3272, "company_name": "HCL - Demo" }, { "id": 3255, "company_name": "IBM1 - Test" }, { "id": 3257, "company_name": "ECO1 - Development" }, { "id": 3253, "company_name": "MindSpace - Development" }, { "id": 3256, "company_name": "ABC - Demo" }, { "id": 3258, "company_name": "CDF - Test" }, { "id": 3205, "company_name": "FGR - Production" }, { "id": 3208, "company_name": "RFGGDDF - Production"}];
    if (data.length > 0) {
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Production") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Development") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < data.length; i++) { if (data[i].company_name.search("Test") > 0) { newarr.push(data[i]); data.splice(i, 1); i = i - 1; } }
        for (var i = 0; i < newarr.length; i++) { $("#environmentDetails").append("<option>" + newarr[i].company_name + "</option>"); }
    }
    window.event.returnValue = false;
}
<select name="environmentDetails" id="environmentDetails"><option>FGR - Production</option><option>RFGGDDF - Production</option><option>ECO1 - Development</option><option>MindSpace - Development</option><option>IBM1 - Test</option><option>CDF - Test</option></select>