我有一个带有各种键值对的选择框。我想要做的是,当我在选择框中选择一个项目时,我想使用所选的键值对来显示一个表单(部分视图),并使用基于所选值的值填充它。我想我需要回调我的控制器或返回部分视图的东西,但是不知道如何完全这样做,因为它超出了我一直在使用的典型MVC工作流程。任何帮助我研究如何做到这一点的链接都将非常感激。
答案 0 :(得分:0)
请参阅此处{s = 3}}。
如果在浏览器中禁用了javascript,则需要触发器(例如按钮)来触发回发到所有操作。
答案 1 :(得分:0)
假设您有一个可以像这样呈现HTML Select的视图
<select id="states">
<option value="1">MI</option>
<option value="2">NY</option>
<option value="3">CA</option>
</select>
<div id="partialContent"> </div>
我们将捕获此SELECT元素的change事件,并对服务器进行ajax调用以获取部分视图内容
<Script type="Text/javascript">
$(function(){
$("#states").change(function(){
var stateId=$(this).val();
$("#partialContent").load("@Url.Action("StateDetails","State")/"+stateId);
});
});
</script>
这将通过传递带有值的参数id作为HTML Select的选定值,进行ajax GET调用以从StateDetails
控制器中的State
操作方法获取响应。
public ActionResult StateDetails(int id)
{
var stateDetail=myRepositary.GetStateDetail(id);
return View(stateDetail);
}