Javascript将ViewData列表值与DropDownlist Selected Item进行比较

时间:2011-12-20 14:11:30

标签: jquery asp.net-mvc viewdata

我一直在寻找这个问题的答案,但没有任何完全满足我正在寻找的东西。 我有一个项目下拉列表。当用户选择一个项目时,我想将所选值与两个不同列表中的项目进行比较(两个列表都是从db填充并存储在ViewData中)。这样,我可以根据匹配的列表项填充一些其他表单数据。我想做这个客户端(即使用JQuery / Javascript)。 这篇文章看起来是一个好的开始,但我需要将我的1值与2个不同列表中的项目进行比较: Need simple example of how to populate javascript array from Viewdata list

1 个答案:

答案 0 :(得分:0)

最终得到了我的问题的答案。在我的.cshtml文件的表单部分,我有:

@Html.DropDownList("DropDownCompany", (ViewData["DropDownCompanies"] as SelectList), "Select a Company")

在我的.cshtml文件的javascript部分,我有:

 $('#DropDownCompany').change(function () {

var dropdownvalue = $('#DropDownCompany').val();
// This is a list of objects
var str2 = @Html.Raw(Json.Encode(ViewData["CompaniesData"]));

然后,我可以稍后(仍在javascript部分内)通过以下方式对它们进行比较:

// CompanyKey is a field of the CompaniesData class
for(var i in str2) {
if (str2[i].CompanyKey == dropdownvalue) {
// Do Stuff
}