我使用嵌套控件進行了一系列的形式,並具有與onclick事件的問題。嵌套的用戶控件LinkButton的onClick事件不觸發 - asp.net/C#
我只是用文本框和手動代碼隱藏插入,而不是GridView的/詳細信息視圖結構。
的情況是,我有一個汽車保險的形式,用戶可以添加額外的命名的驅動程序。頂部是添加自己的詳細信息的部分(這是一個單獨的用戶控件),並且下面有一個部分,您可以在其中添加最多4個命名驅動程序(也是單獨的用戶控件)。我想要做的就是使用我的'添加驅動程序'linkbutton onclick事件將詳細信息添加到數據庫中,然後清除表單域,以便用戶可以添加另一個驅動程序。這一切都工作正常,直到你再次點擊添加驅動程序按鈕,發現它不起作用。
這是一個容納添加驅動程序的用戶控件的家長控制:
<h2>Add Permanent Driver</h2>
<asp:ValidationSummary ID="uxValidationSummary" runat="server" ShowSummary="true" ValidationGroup="ChangeDetails" />
<div class="clear"></div>
<h3>
Please enter your details below as they are on your insurance documents</h3>
<uc1:UserDetails ID="uxUserDetails" runat="server" />
<uc2:AddDriver ID="uxAddDriver" EntryType="Permanent" runat="server" />
這是添加驅動程序的onclick事件的縮減版本,提交有關AddDriver控制
protected void uxSubmit_Click(object sender, EventArgs e)
{
Page.Validate("AddDriver");
if (Page.IsValid)
{
DriverDAL.DriverTableAdapters.DriverTableAdapter taDriver = new DriverDAL.DriverTableAdapters.DriverTableAdapter();
taDriver.DriverInsert(StartDate, EndDate, Title,
FirstName, Surname, DateOfBirth, Gender);
uxDriverList.DataBind();
uxDate.Text = string.Empty;
uxEndDate.Text = string.Empty;
uxTitle.SelectedIndex = 0;
uxFirstName.Text = string.Empty;
uxSurname.Text = string.Empty;
uxDateOfBirth.Text = string.Empty;
uxGender.SelectedIndex = 0;
}
}
按鈕有什麼我可以做的,以重新激活這個鏈接按鈕後第一個OnClick(或刪除它,並重新創建它),所以我可以添加多個驅動程序?我試圖在提交後數據綁定按鈕,但正如預期的那樣,這沒有任何效果,但這正是我所尋找的。我無法重定向頁面,因爲正如前面提到的那樣,它使用嵌套控件,並使用DropDownList的SelectedIndexChanged事件來到此窗體。
任何想法讚賞 - 謝謝。讓我知道是否需要更多信息。
該按鈕是否仍然會導致回發,還是它沒有做任何事情?你有沒有嘗試過設置'CausesValidation =「false」'? –
嗨,詹姆斯 - 好主意。這不會導致回發,但我已經設置了'CausesValidation =「false」',它確實有效。唯一的麻煩是,我需要它來引起驗證,所以它還沒有完全解決。這很好,雖然... –