MVC3 DropDownList + JSON + 选定问题

2024-05-11

我的网站(MVC3 + JQuery)及其移动版本(MVC3 + JQuery mobile)之间有一个非常奇怪的行为,它们分为两个不同的解决方案。

我正在使用以下代码根据另一个下拉列表(搜索值)更改下拉列表的内容(搜索值)。

Razor:

@Html.DropDownListFor(x => x.SelectedSearch, new SelectList(Model.SearchBy, "key", "value"), new { onchange = "GetValues($(this).val());" })
@Html.DropDownListFor(m => m.SelectedSearchValue, new SelectList(Model.SearchValue, "key", "value"))

JSON:

$.ajax({
                    type: "POST",
                    url: '@Url.Action("GetValues", "Search")',
                    data: "{searchId:" + searchId + "}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (data) {
                        var options = $('#SelectedSearchValue');
                        $('option', options).remove(); // Remove previous

                        $.each(data, function () {
                            options.append($('<option/>').val(this.Id).text(this.Display));
                        });
                    }
                });

这段代码在我的网站(JQuery)上工作得很好,但在我的移动网站(JQuery mobile)上却不是这样,它适用于 Opera Mobile,但不适用于 FF、IE 或 Safari ...(我尝试使用用户代理)模拟移动设备)

SearchValue 下拉列表的值已正确设置,但在 JSON 调用结束时,所选值是先前选择的值(不在下拉列表的可能值中)。我不确定是否清楚,所以我给你举一个小例子:

我对 SearchBy 有以下可能性: - 姓名 - 车

当我选择名称时,我想在 SearchValue 中显示“Name1”、“Name2”等内容 当我选择汽车时,我想在 SearchValue 中显示“Car1”、“Car2”等内容

但是,使用我的移动网站上的先前代码,当我将值“名称”更改为“汽车”时,下拉列表会正确地重新填充正确的值(“Car1”、“Car2”等),但所选值是前一个值(例如“Name1”)即使它不在下拉列表的可能值中。我也尝试手动选择第一个值,但没有任何反应:

$('option[value=' + myBeautifulValue + ']').attr('selected', 'selected');

你有办法解决我的问题吗?我做错了吗?

预先感谢您的帮助, 尼科

PS:抱歉我的英语不好


好的,我找到了解决方案。我必须刷新下拉菜单,奇怪! 像那样 :

var myselect = $("#SelectedSearchValue"); 
myselect[0].selectedIndex = 0; 
myselect.selectmenu('refresh'); 

Source http://www.andymatthews.net/read/2011/12/14/Refreshing-jQuery-Mobile-listviews,-buttons,-select-dropdowns,-and-input-fields

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MVC3 DropDownList + JSON + 选定问题 的相关文章

随机推荐