我在aspx頁面中使用aspx用戶控件的多個實例時遇到問題。當我試圖通過Java腳本獲取用戶控制元素值時,會發生這種情況。在aspx頁面中使用aspx用戶控件的多個實例
用戶控件代碼:點擊Go按鈕
<script type="text/javascript">
function ucFun()
{
var a = document.getElementById("<%=tbName.ClientID%>");
alert(a.value);
return false;
}
</script>
<asp:Label Text="Name" runat="server" ID="lblname"></asp:Label>
<asp:TextBox ID="tbName" runat="server" ></asp:TextBox>
<asp:Button ID="btSubmit" runat="server" Text="Go" OnClientClick="ucFun()" />
Web窗體代碼
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<uc:cont runat="server" ID="ucID" />
<uc:cont runat="server" ID="Cont1" />
<uc:cont runat="server" ID="Cont2" />
</div>
</form>
</body>
</html>
,它顯示空詮釋他的警告框,因爲該元素是不確定的。 但是,當我在窗體中有一個用戶控件實例時,它正確顯示了文本框的值。
是否有我們應該寫什麼辦法..
當你的函數名不改變,當你添加了第二控制的第一個版本'ucFun'是覆蓋。 –
感謝Rubens回覆。如果我需要驗證UC字段,那麼我必須在UC讀取字段值中寫入JS。然後使用多個UC實例將會失敗。我們如何實現它 –