背景:我有一个 Web 表单,可以根据所选的运营商将捆绑包列表自动回发到列表框。当回发发生时,所有用户输入的数据都会被清除。
如何防止 AutoPostback 功能从表单中清除输入的数据?
这是该应用程序的屏幕截图:
asp前端代码:
<asp:RequiredFieldValidator ID="CarrierValidator" runat="server" Text="*"
ErrorMessage="Select At Least 1 Carrier" ControlToValidate="lbCarriers"
ValidationGroup = "ValidationGroup" ForeColor="Red" ></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="style1">
Bundles:<br />
<font size="1">*Hold Ctrl Key Down to Select Multiple Bundles</font></td>
<td bgcolor="#ffffff" class="style6">
<asp:ListBox ID="bundles" SelectionMode="Multiple" runat="server" Height="86px"
Width="250px" Enabled="True"
ValidationGroup="ValidationGroup">
</asp:ListBox>
vb.net 后面的代码:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load, Me.Load, Me.Load
Try
If Not IsPostBack Then
'testing lines
If MCshort = "" Then
arryCarriers = proxy.GetCarrierNames(My.Settings.UserID, My.Settings.Password)
arryMccompanies = proxy.GetMarketingCompanyNames(My.Settings.UserID, My.Settings.Password)
GetMarketingCompanies()
GetCarriers()
'For Each item In arryCarriers
' If item.CarrierNameShort = "MOO" Or item.CarrierNameShort = "GBR" Then
' lbCarriers.Items.Add(String.Format("{0} | {1} | {2}", item.CarrierID, item.CarrierNameLong, item.CarrierNameShort))
' End If
'Next
For Each item In arryMccompanies
If item.MarketingCompanyShort = MCshort Then
MCNameLong = item.MarketingCompanyName.ToString
End If
Next
End If
Dim splt() As String = User.Identity.Name.ToString.Split("\")
MCshort = splt(0)
' mcShort = "AMG"
txtMarketerName.Text = splt(1)
Else
Dim splt() As String = User.Identity.Name.ToString.Split("\")
MCshort = splt(0)
' mcShort = "AMG"
txtMarketerName.Text = splt(1)
GetBundles()
End If
Catch ex As Exception
WriteToEventLog(ex.Message, "Page_Load-Method", EventLogEntryType.Error, "aComp-utility")
End Try
End Sub
感谢您的关注!