Я пытаюсь использовать несколько экземпляров элемента управления ascx на одной странице. Работает только последний элемент управления на странице. Я понимаю из этого поста [Asp.Net User Control does not work correctly when multiple are added to one form, что проблема связана с идентификаторами; каким-то образом я пытаюсь повторно использовать идентификаторы, а редактируемый отредактированный элемент не ссылается правильно. Однако код на этой странице сложный, и я не понимаю ответов. Я создал небольшой пример моей проблемы, чтобы продемонстрировать.Как ссылаться на несколько идентичных элементов управления пользователя на странице
Вот мой пользовательский элемент управления:
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="testControl.ascx.vb" Inherits="Tempusforms.testControl" %>
<script type="text/javascript">
function getValue() {
document.getElementById("<%=Label1.ClientID %>").innerHTML = getIndex();
}
function getIndex() {
return document.getElementById("<%=droppit.ClientID %>").selectedIndex;
}
</script>
<span>
\t \t <asp:DropDownList ID="droppit" runat="server" OnChange="getValue();" >
<asp:ListItem Value="Select a Value"></asp:ListItem>
<asp:ListItem Value="one"></asp:ListItem>
<asp:ListItem Value="two"></asp:ListItem>
<asp:ListItem Value="three"></asp:ListItem>
</asp:DropDownList>
</span> Index Value =
<span>
<asp:label ID="Label1" runat="server" Text="mylabel" ></asp:label>
</span>
Вот страница, которая использует элементы управления:
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="userControlTest.aspx.vb" Inherits="Tempusforms.userControlTest" %>
<%@ Register src="../Common/testControl.ascx" tagname="testControl" tagprefix="uc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<uc1:testControl ID="testControl1" runat="server" />
<br /><br />
<uc1:testControl ID="testControl2" runat="server" />
</div>
</form>
</body>
</html>
Можете ли вы Sh я должен сделать эту работу?
Благодарим за помощь.
Да, спасибо. Он работает так, как вы сказали. – timeKeeper