选择2不更新条目

时间:2015-01-12 09:54:05

标签: c# jquery ajax twitter-bootstrap jquery-select2

我有一个使用C#,jQuery和Select2 v3.5.2的MVC5应用程序,以及Bootstrap 2.3.2。

现在我是select2的新手,所以我遇到了一些麻烦。例如,我想要一个包含多个项目的文本框,如标记支持的示例所示。

现在,这应该不难,但问题是我需要在对服务器进行Ajax调用之后使用jQuery在Bootstrap模式中动态更新这些值。

听起来很复杂,但很简单。当用户单击编辑项目的按钮时,在查询服务器以获取该项目的信息后,我会显示Bootsrap模式以及该项目的信息:

 //Show Edit Package modal
    $("a.btn.btn-default.editPackage").click(function () {
        //ask the server for item information 
        $.ajax({
            url: $(this).data('url'),
            type: 'get',
            cache: false,
            success: function (result) {
                //this input field belongs to the modal
                $(input #SubCategoryId).attr('data-edit-values', '13 - Orange');
                $('#myModal').show();
            }
        });
        return false; //prevent browser defualt behavior
    });

这是Modal(主要是锅炉板代码):

<div class="modal fade" id="@Model.modalId" tabindex="-1" role="dialog" aria-labelledby="@Model.modalId" aria-hidden="true">
    <div class="modal-dialog" style="overflow-y: auto; max-height: 80vh;">
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title" id="myModalLabel">@Model.modalTitle</h4>
            </div>
            <div class="modal-body" data-val="@Model.packageId">
                <form class="form-horizontal">

                    <div class="control-group">
                        <label class="control-label">Select the Function:</label>
                        <div class="controls">
                            <input class="select2s" data-edit-values="@Model.functionsString" data-o2f-placeholder="Select Employee Function..." data-o2f-url="@Url.Action("FunctionsMultiple", "Home")" data-val="false" id="SubCategoryId" name="SubCategoryId" multiple="multiple" type="text"/>
                        </div>
                    </div>

                </form>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
                <button type="button" class="btn btn-primary" id="@Model.saveButtonId" data-url="@Model.saveButtonUrl">@Model.saveButtonText</button>
            </div>
        </div>
    </div>
</div>

问题是当我加载弹出窗口时,不会加载字段上的值。

我在javaScript中做错了什么?

1 个答案:

答案 0 :(得分:0)

要更新任何模态中select2字段的值,我意识到我必须使用select2中的特殊函数来表示效果:$('#fieldId').select2('data', "blablablaMyData");

相关问题