Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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
不使用jquery中的foreach循环在Select2中加载数据_Jquery_Asp.net Mvc_Jquery Select2 - Fatal编程技术网

不使用jquery中的foreach循环在Select2中加载数据

不使用jquery中的foreach循环在Select2中加载数据,jquery,asp.net-mvc,jquery-select2,Jquery,Asp.net Mvc,Jquery Select2,我正在尝试使用foreach循环将数据加载到select2 代码: 从这里我得到了清单。值进入foreach循环,但不附加到select2 var tr = '<tr>'; tr += `'<td> <select id="services" name="services" class="form-control selec

我正在尝试使用foreach循环将数据加载到select2

代码:

从这里我得到了清单。值进入foreach循环,但不附加到select2

 var tr = '<tr>';
                                   tr += `'<td>
                                    <select id="services" name="services" class="form-control select2 ser">
                                         <option value=`+val.ID +`>  `+ val.Name +`</option >
                                   </select>
                                </td>'`;

这里我使用select2并从数据库中获取所选值。它仅显示选定的值,而不是select2中的所有值。如果可能的话,我想得到所有的值并选择它们。关于如何从数据库获取select2中的所有值和selected value的任何建议。提前感谢。

您可以填写下面的select2,从控制器方法中以ajax的形式获取数据

<script>
    $('#services').select2();
    var url = "@Url.Action("Listofservices", "service")";
    selected();
    function selected() {
        $.get(url, function (response, status) {
            if (status == "success") {
                $.each(response.results, function (i, item) {
                    var selected = "";
                    if (item.selected) {
                        selected = true;
                    }
                    var option = '<option ' + selected +' value="' + item.id + '">' + item.text +'</option>';
                    $('#ddlListing').append(option)
                });
            }
        });
    }
</script>
下面是返回json的action方法的示例,如下所示

public IActionResult GetListings()
 {

            var data = new List<dynamic>();
            data.Add(new
            {
                Id = 1,
                Text = "aaa",
                selected = true,
            });
            data.Add(new
            {
                Id = 2,
                Text = "bbb",
                selected = false,
            });
            data.Add(new
            {
                Id = 3,
                Text = "ccc",
                selected = false,
            });
            return new JsonResult(new { results = data });
  }
我希望它能帮助你,谢谢

<script>
    var url = "@Url.Action("getlistings", "home")";
    $('#ddlListing').select2({
        ajax: {
            url: url
        }
    });
</script>
{
  "results": [
    {
      "id": 1,
      "text": "Option 1"
    },
    {
      "id": 2,
      "text": "Option 2"
    },
    {
      "id": 3,
      "text": "Option 3"
    }
  ]
}
public IActionResult GetListings()
 {

            var data = new List<dynamic>();
            data.Add(new
            {
                Id = 1,
                Text = "aaa",
                selected = true,
            });
            data.Add(new
            {
                Id = 2,
                Text = "bbb",
                selected = false,
            });
            data.Add(new
            {
                Id = 3,
                Text = "ccc",
                selected = false,
            });
            return new JsonResult(new { results = data });
  }