【发布时间】:2012-09-17 20:38:35
【问题描述】:
我已经尝试为我的问题寻找任何可能的解决方案,但到目前为止我所看到的都没有。无论如何,我正在使用 MVC 3,并且我有一个名为 Add Event 的表单。在该页面上,我有一个下拉列表,其中包含用户可以选择的位置列表。我在该下拉列表下方有一个链接,允许用户添加新位置。现在,我有文本框、下拉列表等用于在局部视图中创建新位置,当我单击链接时,该位置将显示在下拉列表下方。
无论如何,我需要刷新下拉列表,这样当我添加新位置时,它会直接出现在列表中。现在发生的事情是在我单击保存后,部分视图会自行隐藏,我仍然需要刷新整个页面以获取下拉列表上的新位置,然后删除我在相同的 texbox 和下拉列表中输入的所有内容页面。
我怎样才能使用 javascript/ajax 做到这一点?
【问题讨论】:
-
如果我说得对,我认为您只需要通过使用 javascript 添加一个新选项来将新位置的数据从部分视图移动到下拉列表即可帮助您做到这一点给我一些代码提高认识
-
您可能希望将 ASP.NET 标记添加到您的问题中。
-
在 ajax 调用的成功函数中,我认为您必须使用 javascript 将新位置添加到下拉列表中,就像 amesh 对您应该从 ajax 调用返回的数据所做的那样,我认为您需要返回要设置为 text 属性的位置名称和要设置为新选项的 value 属性的位置 id :) 如果您需要更多详细信息,请说出来 :)
-
@Html.DropDownListFor(model => model.LocationId, Model.LocationSelectList) 添加位置@Html.Partial ("AddNewLocation")这是我在局部视图函数 saveLocation() { var value = { location_City: $('#newCity').val(); 上添加位置时的 javascript $.ajax({ type: "POST", traditional: true, url: "/Event/jsonAdd/", dataType: "json", data: value, success: function (result) {} });
-
抱歉,我似乎无法在此处正确格式化代码。顺便说一句,我在主窗体上使用 javascript 调用局部视图,然后使用 javascript 在局部视图上保存新位置并隐藏局部视图。
标签: javascript html asp.net-mvc asp.net-mvc-3 model-view-controller