我正在與MVC 4項目中的Telerik控件一起工作。具體來說,我有一個有父/子網格設置的頁面。子網格位於Tabstrip中,我有另一個Tab,我希望允許用戶提交其聯繫信息的更改。Telerik MVC Tabstrip表單提交失去焦點並在發佈後留下頁面
我從Telerik使用的示例/演示可以找到here - http://demos.telerik.com/aspnet-mvc/razor/grid/detailsajax。
在這一點上,我能夠設置我的代碼有一個局部視圖,並在選項卡中成功地調出表單。我有一個測試領域的電子郵件,我可以檢索和填充模型。驗證正在工作。我現在的問題是,表單提交後,它將離開子選項卡,並基於部分視圖創建新頁面,而不是保留在已有的選項卡中。
那麼,如何在表單提交後將焦點保留在當前子標籤中?一般來說,我對MVC都很陌生,所以對Telerik來說可能並不是特定的東西。預先感謝任何建議,下面是一些代碼片段。
查看我的主頁上的代碼。
.Items(items =>
{
items.Add().Text("CourseHistory").Content(
Html.Telerik().Grid<selStudentCourseHistory_Result>()
...grid code snipped...
...
items.Add().Text("Contact Information")
.LoadContentFrom("StudentSubmitContactInfo", "Student", new { studentid = "<#=StudentId #>" })
.Visible(true);
})
.ToHtmlString()
部分信息查看StudentSubmitContactInfo
@using (Html.BeginForm())
{
<div id="dvStudentContact">
<table>
<tr>
<td><label>SC Email:</label></td>
<td>@Html.TextBoxFor(s => s.scEmail)</td>
<td></td>
<td></td>
<td>
<input type="submit" name="btnContactSubmit" value="Submit" id="btnContactSubmit"/>
</td>
</tr>
</table>
</div>
@Html.ValidationSummary()
}
代碼從控制器
public ActionResult StudentSubmitContactInfo(int studentid)
{
StudentContactModel contactinfo = (from s in new LNLiteEntities().Students
where s.StudentId == studentid
select new StudentContactModel
{
scEmail = s.Email
}).FirstOrDefault();
return PartialView(contactinfo);
}
[HttpPost]
public ActionResult StudentSubmitContactInfo(StudentContactModel scm)
{
if (ModelState.IsValid)
{
return RedirectToAction("StudentSubmitContactInfo");
}
else {
return PartialView(scm);
}
}