读书人

某个客户端提交不执行后台代码,该如何

发布时间: 2012-05-16 23:40:10 作者: rapoo

某个客户端提交不执行后台代码
用VS2003写的asp.net网站,前台有三个地方会调用后台代码,现碰到一台客户端在点击后,后台服务器不执行代码,类似没有提交到后台,全公司也就这一台客户端有此问题,客户端IE为6.0,初步怀疑客户端问题,但是这个怎么查啊,烦请大侠们帮忙,具体前后台代码如下:

前台调用的地方:
1、<asp:ButtonColumn HeaderText="考核状态" CommandName="confirm" HeaderStyle-Font-Names="helvetica,arial,sans serif" HeaderStyle-Font-Size="8pt" HeaderStyle-ForeColor="Blue"></asp:ButtonColumn>
2、<asp:checkbox id="ckAll" runat="server" AutoPostBack="True" Text="全选"></asp:checkbox>
3、<asp:imagebutton id="bt_confirm" runat="server" imageUrl="../Images/btn_batchconfirm.gif"> </asp:imagebutton>



后台对应代码
1
Private Sub DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.ItemCommand
Dim tmpSQL As String
Dim tmpComm As New CommonDB
Dim tempDataset As DataSet

If e.CommandName = "confirm" Then
Dim tmpResult As Integer
tmpSQL = "update exa_usertotal set STATUS='10',OP_NO='" & Session("UserID") & "',AppDate='" & Get_Date_YYYYMMDD(Now) & "',AppTime='" & Get_Date_HHMMSS(Now) & "' where StaffID ='" & DataGrid1.DataKeys(CInt(e.Item.ItemIndex)) & "' AND aplterm='" & Session("aplterm") & "'"
tmpResult = tmpComm.ExecuteCmd_noCheck(tmpSQL)
If tmpResult = 1 Then
InsertExaData_to_HR_DB(DataGrid1.DataKeys(CInt(e.Item.ItemIndex)), Session("aplterm"))
Response.Write("<Script language='JavaScript'>window.location.href=window.location.href;</script>")
GenLog(Session("UserID"), "M000004", "为【" & DataGrid1.DataKeys(CInt(e.Item.ItemIndex)) & "】[" & Session("aplterm") & "]确认考核!", Page.Request.UserHostAddress)
End If
End If
End Sub

2
Private Sub ckAll_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ckAll.CheckedChanged
Dim i As Integer
Dim grdItem As DataGridItem
Dim chkboxRow As System.Web.UI.WebControls.CheckBox
Dim intSelectCount As Integer
Dim intSelectIndex

intSelectCount = 0
For Each grdItem In Me.DataGrid1.Items
chkboxRow = grdItem.FindControl("chkRow")
chkboxRow.Checked = Me.ckAll.Checked
Next

End Sub

3
Private Sub bt_confirm_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles bt_confirm.Click
Dim i, Result As Integer
Dim grdItem As DataGridItem
Dim chkboxRow As System.Web.UI.WebControls.CheckBox
Dim intSelectCount As Integer
Dim tmpComm As New CommonFunction
Dim tmpCommDB As New CommonDB
Dim tmpSql As String
Dim SQLArr(10000) As String
Dim ArrNum As Integer = 0
Dim intSelectIndex

intSelectCount = 0
For Each grdItem In Me.DataGrid1.Items
chkboxRow = grdItem.FindControl("chkRow")
If chkboxRow.Checked = True Then
intSelectCount += 1
ReDim Preserve intSelectIndex(intSelectCount)


intSelectIndex(intSelectCount - 1) = DataGrid1.DataKeys(CInt(grdItem.ItemIndex))
End If
Next

If intSelectCount = 0 Then
Response.Write("<Script language='JavaScript'>alert('请先选择需要批量确认的员工!');</script>")
Exit Sub
End If

For i = 0 To UBound(intSelectIndex) - 1
tmpSql = "update exa_usertotal set Status='10',OP_NO='" & Session("UserID") & "',AppDate='" & Get_Date_YYYYMMDD(Now) & "',AppTime='" & Get_Date_HHMMSS(Now) & "'"
tmpSql &= " where "
tmpSql &= "StaffID='" & intSelectIndex(i) & "'"
tmpSql &= " AND aplterm='" & Session("aplterm") & "'"
SQLArr(ArrNum) = tmpSql
ArrNum = ArrNum + 1
InsertExaData_to_HR_DB(intSelectIndex(i), Session("aplterm"))
Next

Result = tmpCommDB.cmdbatch(SQLArr)


If Result >= 0 Then
Response.Write("<Script language='JavaScript'>alert('考核确认成功!\n');</script>")
BindDataSource()
Else
Response.Write("<Script language='JavaScript'>alert('考核确认失败!\n');</script>")
End If
End Sub

[解决办法]
眼花了,设个断点调试一下
[解决办法]
IE启用脚本功能了吗
另外,最好不要使用验证控件。
[解决办法]
另外,你可以贴生成的html源代码

读书人网 >asp.net

热点推荐