Asp.net mvc 2 我一直在使用asp.net MVC,无法在dropdownlistbox中触发更改事件
我已经创建了一个名为admissioncontroller的控制器,在这里我添加了两个ActionResult函数:Create和Post-EventAsp.net mvc 2 我一直在使用asp.net MVC,无法在dropdownlistbox中触发更改事件,asp.net-mvc-2,Asp.net Mvc 2,我已经创建了一个名为admissioncontroller的控制器,在这里我添加了两个ActionResult函数:Create和Post-Event // POST: /Admission/Create [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create(FormCollection collection) { try { // TODO: Add insert logic here
// POST: /Admission/Create
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(FormCollection collection)
{
try
{
// TODO: Add insert logic here
return RedirectToAction("Index",collection);
}
catch
{
return View();
}
}
//Return the List of Subject For the Class Selected
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Details(string className)
{
var subject = SubjectsModel.SelectSubjectsByClass(className);
return PartialView("EntranceMarks", subject);
}
现在进入查看页面
创建页面
<h2>
Create</h2>
<% using (Html.BeginForm())
{%>
<%= Html.ValidationSummary(true) %>
<fieldset>
<legend>Fields</legend>
<div class="editor-label">
<%= Html.LabelFor(model => model.Id) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.Id) %>
<%= Html.ValidationMessageFor(model => model.Id) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.PlNo) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.PlNo) %>
<%= Html.ValidationMessageFor(model => model.PlNo) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.AdmissionNo) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.AdmissionNo) %>
<%= Html.ValidationMessageFor(model => model.AdmissionNo) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.AdmissionDate) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.AdmissionDate) %>
<%= Html.ValidationMessageFor(model => model.AdmissionDate) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.FirstName) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.FirstName) %>
<%= Html.ValidationMessageFor(model => model.FirstName) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.MiddleName) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.MiddleName) %>
<%= Html.ValidationMessageFor(model => model.MiddleName) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.LastName) %>
</div>
<div class="editor-field">
<%= Html.TextBoxFor(model => model.LastName) %>
<%= Html.ValidationMessageFor(model => model.LastName) %>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.Class) %>
</div>
<%using (Ajax.BeginForm("Details", new AjaxOptions {
UpdateTargetId = "EntranceMarks" }))
{ %>
<div class="editor-field">
<%=Html.DropDownList("StudentClass")%>
</div>
<div class="editor-label">
<%= Html.LabelFor(model => model.Section) %>
</div>
<div class="editor-field">
<%=Html.DropDownList("Section")%>
</div>
<div class="editor-label" id="EntranceMarks">
</div>
<%} %>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
<% } %>
<div>
<%= Html.ActionLink("Back to List", "Index") %>
</div
现在,当我更改类的dropdownlist框时,我无法触发事件???在创建dropdownlist时,您需要包含onchange句柄。下面提到的ChangeClass方法是您需要创建的javascript函数的名称
<%=Html.DropDownList("StudentClass", new {onchange="ChangeClass()"})%>
现在,如果您的意思是希望在更改下拉列表时提交表单,那么可以通过
<%=Html.DropDownList("StudentClass", new {onchange="this.form.submit()"})%>
我知道这是你的第一个问题,但很难理解。请编辑您的帖子以修复代码的格式,删除所有不必要的代码,然后准确解释您所谈论的事件。这真的会帮助别人回答你的问题。谢谢,好多了。我还是不知道你说的不能启动事件是什么意思。你想发生什么?
<%=Html.DropDownList("StudentClass", new {onchange="this.form.submit()"})%>