Я использую приложение ASP.NET MVC2 в C #. У меня есть две HTML-формы на моей странице контента.
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2><%: ViewData["Message"] %></h2>
<form id="form1">
<input id="text1" type="text" />
<input type="submit" value="submit" />
</form>
<form id="form2">
<input id="text2" type="text" />
<input type="submit" value="submit" />
</form>
</asp:Content>
Что я хочу сделать, это установить фокус на Text Box после отправки назад. После отправки «form1» у «text1» должен быть фокус, и аналогично, после «form2», у «text2» должен быть фокус, чтобы пользователю не приходилось использовать мышь, чтобы вернуть фокус в текстовое поле и продолжить типирование.
Следующий код отлично работает для одной HTML-формы на странице.
<html>
<head>
<script>
void function setfocus() {
document.getElementById("text1").focus();
}
</script>
</head>
<body onload="setfocus();">
<form method="post" action="">
<input type="submit" value="submit">
<input id="text1" type="text">
</form>
</body>
</html>
* Проблема в том, что у меня есть две HTML-формы на странице. Другая проблема заключается в том, что мои веб-формы находятся на странице содержимого главной страницы asp.net, которая находится внутри единственной главной формы и имеет тег, который имеет свойство «onload».
Мой друг предложил мне использовать ScriptManager и UpdatePannel в Ajax. Однако UpdatePannel не нравится элементы HTML внутри него. Кажется, поддерживаются только элементы управления asp.net.
Очень благодарен за ваше руководство.