0
私はリストボックスに項目を追加しようとしています。テキストボックスとボタンがあり、ユーザーがテキストボックスに何かを入力して追加すると、ページを更新せずにリストボックスに新しいアイテムを挿入したいと考えています。ここでASP.Net投稿することなく投稿する投稿を
は、私がこれまで持っているものです。
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div class="col-xs-6 text-center">
<asp:Label ID="empid" runat="server" Text="Employee ID" CssClass="label-default label "></asp:Label>
<asp:TextBox ID="txtEmployeeID" runat="server" CssClass="form-control"></asp:TextBox>
<div class="col-xs-6">
<asp:Button ID="btnAddEmp" runat="server" Text="Add Emp" CssClass="btn btn-primary top-buffer" Width="100%" />
</div>
<div class="col-xs-6">
<asp:Button ID="btnRemoveEmp" runat="server" Text="Remove Emp" CssClass="btn btn-danger top-buffer" Width="100%" />
</div>
<asp:ListBox ID="listEmps" runat="server"
CssClass="top-buffer add-height"
Width="100%"
ValidationGroup="req"></asp:ListBox>
</div>
</ContentTemplate>
</asp:UpdatePanel>
、ここでは、私のボタンクリックイベントはどのように適切にページを更新せずにリストボックスに項目を追加することができます
Protected Sub btnAddEmp_Click(sender As Object, e As EventArgs) Handles btnAddEmp.Click
If Not IsPostBack() Then
If listEmps.Items.Count = 0 Then
listEmps.Items.Add(txtEmployeeID.Text)
Else
'check list to see if employee already exists
For i = listEmps.Items.Count - 1 To 0 Step -1
If RTrim(txtEmployeeID.Text) = RTrim(listEmps.Items(i).ToString) Then
'employee already exists within list
Response.Write("<script>alert('Employee ID " & txtEmployeeID.Text.Trim & " has already been added. ')</script>")
txtEmployeeID.Text = ""
Exit Sub
End If
Next
'add to list
listEmps.Items.Add(txtEmployeeID.Text)
End If
End If
End Sub
のですか?
これはどうしたらうまくいかないのですか?何かエラーがありますか? – zgood
@zgoodエラーなし、追加ボタンを押しても何も起こりません。 – Zoxac
If Not IsPostBack()チェックを削除しようとしましたか?通常、これは 'Page_Load'イベントでのみ使用されます。ボタンクリックイベントは 'UpdatePanel'内にあるので非同期でなければなりません。しかし、私はこれがあなたの問題だとは思わない... – zgood