Json填充Dual ListBox

西蒙·普莱斯(Simon Price)

我正在使用http://www.virtuosoft.eu/code/bootstrap-duallistbox/中的双重列表框控件,并尝试使用从JSON请求返回的信息填充该列表框

最初,我是用VB中的一个子来填充Duallistbox的,就像这样

Public Shared Sub GenerateDropDownListAndValues(dt As DataTable, ddl As DropDownList, addSelect As Boolean)

    ddl.DataSource = dt
    ddl.DataTextField = dt.Columns(1).ToString()
    ddl.DataValueField = dt.Columns(0).ToString()
    ddl.DataBind()
    If addSelect = True Then
        ddl.Items.Insert(0, New ListItem("Please select"))
    End If

End Sub

然后使用JQuery

$('#MainContent_ddlUnassignedFiles').bootstrapDualListbox(
        {
            nonSelectedListLabel: 'Non-selected',
            selectedListLabel: 'Selected',
            preserveSelectionOnMove: 'moved',
            moveOnSelect: true
        });

在页面加载和回发时可以正常工作,不会出现任何问题。

但是,当我用ajax填充DLB时,我什么也得不到

这是阿贾克斯

 $.ajax({
        type: "POST",
        url: "Assignments.aspx/GetIncompleteSpreadsheets",
        data: JSON.stringify(params),
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (data) {
            $("#MainContent_ddlUnassignedFiles").select2("destroy");

            var ddlUnassignedFiles = $("#MainContent_ddlUnassignedFiles");
            ddlUnassignedFiles.empty();
            $.each(data.d, function () {
                ddlUnassignedFiles.append($("<option></option>").val(this['Value']).html(this['Text']));
            });
            $("#MainContent_ddlUnassignedFiles").select2();

            $("#saveModal").modal("hide");

        },
        error: function (data) {
            console.log("error :" + data);
            console.log(data);
            $("#saveModal").modal("hide");
        }
    });

这是提供json \ response的调用

    <Script.Services.ScriptMethod(), Services.WebMethod()> _
Public Shared Function GetIncompleteSpreadsheets(val As Integer) As List(Of ListItem)
    Dim listOfParam As New List(Of SqlParameter)

    Dim userIdParam As New SqlParameter("@UserId", SqlDbType.VarChar)
    userIdParam.Value = GetUserId()
    listOfParam.Add(userIdParam)

    Dim groupParam As New SqlParameter("@GroupId", SqlDbType.Int)
    groupParam.Value = val
    listOfParam.Add(groupParam)

    Dim dt = GetDataAsDatatable(listOfParam, ConnStr, "App.usp_GetAssignedLists")

    Dim retVal = (From row As Object In dt.Rows Select New ListItem() With {
        .Value = row("RequestHeaderId"),
    .Text = row("FileName")}).ToList()

    Return retVal
End Function

我在这里的问题是,使用相同的代码填充另一个下拉列表时,此方法非常有效。但是我遇到的问题是未填充DLB,而是在页面上创建了另一个下拉列表,并且没有填充正确的控件。

任何帮助都将不胜感激。

ry

以下为我工作:

HTML:更新

<select id="test">
    <option>A</option>
    <option>B</option>
</select>

JS:更新

$("#test").bootstrapDualListbox();

$.getJSON("/api/Home/").success(function (array) {
    $("#test").children().remove();
    $.each(array, function () {
        $('<option>').text(this).appendTo("#test");
    })

    $("#test").bootstrapDualListbox('refresh', true);
})

我的控制器方法(C#):

public List<int> Get()
{
    return new List<int>{1,2,3,4};
}

结果:

duallistboxresult

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Json填充Dual ListBox

来自分类Dev

通过JavaScript填充时出现Bootstrap Dual Listbox问题

来自分类Dev

Windows Phone-使用Json填充ListBox

来自分类Dev

从行数组填充ListBox

来自分类Dev

bootstrap Dual Listbox 敲除绑定

来自分类Dev

填充ListBox DataTemplate的性能更好

来自分类Dev

如何填充backgroundworker中的ListBox?

来自分类Dev

VBA-无法填充ListBox

来自分类Dev

VBA - 从多个 ListObjects 填充 ListBox

来自分类Dev

MVC 4 ListBox填充另一个ListBox

来自分类Dev

使用存储过程填充@ html.listbox

来自分类Dev

使用 DataBinding 的 ListBox 填充速度极慢

来自分类Dev

Excel VBA根据Listbox2选择填充Listbox1

来自分类Dev

用数据库查询结果填充ListBox

来自分类Dev

Excel VBA-如何从可变范围填充ListBox的值?

来自分类Dev

用<class> VB.NET的列表填充ListBox

来自分类Dev

在VB.Net上使用参数化查询填充ListBox

来自分类Dev

从自定义对象列表填充ListBox对象

来自分类Dev

ListBox和ApplicationBar:最后一个元素填充

来自分类Dev

如何用字符串数组填充“ asp:ListBox”?

来自分类Dev

如何在引用 ListBox 选项时执行 DataSeries 填充?

来自分类Dev

动态填充 ListBox vb.net 的有效方法

来自分类Dev

将JSON文件加载到ListBox和TextBox C#

来自分类Dev

无法将第二个数组绑定到angular-dual-listbox

来自分类Dev

如何使用mvc 4用Ajax结果填充Html.Listbox

来自分类Dev

填充ListBox时,从每个列表项中删除前12个字符

来自分类Dev

如何仅使用一种方法来填充ComBobox和ListBox的项目?

来自分类Dev

用ObservableCollection填充ListBox并在StackPanel中显示所选项目的属性

来自分类Dev

用List(T)类填充ListBox。不使用数据源

Related 相关文章

热门标签

归档