私は、VB.NET 1.1フレームワークで開発された古いWebアプリケーションを使用しています。チェックボックスに問題があります。ASP.NETで動作するチェックボックスを取得する方法
私は、チェックボックスのために次のコードを持っている:私のOnCheckChanged
イベントの
<asp:TemplateColumn HeaderText="Reviewed">
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
<ItemTemplate>
<asp:checkbox ID="chkAppRev" Runat="server"
OnCheckedChanged="onCheckChange" AutoPostBack="True" />
</ItemTemplate>
</asp:TemplateColumn>
と、これを:
Public Sub onCheckChange(ByVal sender As Object, ByVal e As EventArgs)
Dim strSQL As String = String.Empty
Dim inbox As CheckBox = CType(sender, CheckBox)
Dim dgItem As DataGridItem = CType(inbox.NamingContainer, DataGridItem)
Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection(ConfigurationSettings.AppSettings("CONNECTIONSTRING"))
Try
'--update checkbox field on record in database
conn.Open()
If inbox.Checked = True Then
strSQL = "Update AppUserJobs Set AppChecked=1 " & _
"Where AppUserId=" & Convert.ToInt32(dgItem.Cells(9).Text) &
" and JobId=" & Convert.ToInt32(dgItem.Cells(10).Text)
Else
strSQL = "Update AppUser Set AppChecked=0 " & _
"Where AppUserId=" & Convert.ToInt32(dgItem.Cells(9).Text) &
" and JobId=" & Convert.ToInt32(dgItem.Cells(10).Text)
End If
Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(strSQL, conn)
Dim intRec As Integer = cmd.ExecuteNonQuery()
conn.Close()
Catch ex As Exception
Finally
If (conn.State = ConnectionState.Open) Then
conn.Close()
End If
End Try
BindData()
End Sub
この私がASPコードに別のチェックボックスを追加し、別まで、すべてが正常に動作しますoncheckchanged
メソッドでは、クエリをスキップするだけのようです。
誰も私が逃したアイデアはありますか?
問題が発生する前のコードを見て、どのように問題を確認できますか?あなたが変更を行った後に見えるようにコードを投稿してください。 – Guffa
SQLインジェクションFTW! –
こんにちはGuffaありがとう、私は文字の制限のために推測するコードをもう投稿することはできませんが、私は単純に別のIDでチェックボックスのコードを複製し、OnCheckChangedメソッドのクエリをスキップしてコードを破ります。 –