<AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.Read)> _
Public Function HandleSelect(ByVal table As String, ByVal eventSource As String, ByVal filterValue As String, ByVal targetControl As String) As StreetNameResponse
Dim tName As TableName
Dim filter As String = Nothing
Dim sort As String = Nothing
Dim textField As String = Nothing
Dim valueField As String = Nothing
Dim name As String = Nothing
Dim onChange As String = Nothing
'Assign security filter
CheckSecurityFilter()
Select Case table.ToLower
Case "county"
tName = TableName.County
If filterValue = "-1" Or filterValue = "" Then
If _restrictionLevel = RestrictionLevel.District Then
filter = _restrictionFilter
End If
Else
filter = String.Format("maintdisnmbr in ({}0)", filterValue)
End If
tName = TableName.County
sort = "countyname ASC"
textField = "countyname"
valueField = "countynmbr"
name = "selCounty"
onChange = "CheckSubmitEnabled();ajaxGetSelect('city','county', this, 'spanCity')"
Case "city"
If filterValue = "-1" Or filterValue = "" Then
'No value selected, set the filter to the default security value
If _restrictionLevel = RestrictionLevel.District Or _restrictionLevel = RestrictionLevel.County Then
filter = _restrictionFilter
End If
Else
Select Case eventSource.ToLower
Case "district"
filter = String.Format("maintdisnmbr in ({0})", filterValue)
Case "county"
filter = String.Format("countynmbr in ({0})", filterValue)
End Select
End If
tName = TableName.MasterCity
sort = "sams_cityname ASC"
textField = "sams_cityname"
valueField = "cityname_value"
name = "selCity"
onChange = "CheckSubmitEnabled()"
End Select
Dim selOutput As HtmlSelect = BuildSelect(tName, filter, sort, textField, valueField, name, onChange)
Dim outControl As New StreetNameResponse
outControl.targetControl = targetControl
outControl.outputControl = selOutput
MyBase.ProperCaseSelectControl(selOutput)
Return outControl
End Function
В приведенном выше коде у меня проблема с отладкой. Дело в том, что в HTML у меня есть три тега выбора. Район, округ и город. Если вы выбираете округ, он должен обновить округ и город, чтобы ограничить только округа или города в этом округе. Город работает отлично, а округ - нет. Я обнаружил, что при выполнении этого кода выше, если он проходит через сегмент County Case, он просто останавливает filter = String.Format ("maintdisnmbr in ({} 0)", filterValue). Если я шаг за шагом, код не заканчивается. Если я не пойду шаг за шагом и не прыгну вперед, это выдаст мне сообщение о том, что строка ввода не отформатирована. Это не мой код, и я не работал с Ajax, но я должен исправить это, пожалуйста, помогите, по крайней мере, выяснить, будет ли проблема великой.