DropDownList 및 RangeValidator이 할당 된 업데이트 도중 사이트를 상속 받았습니다. 데이터는 Page_Load의 드롭 다운에 바인딩됩니다. 값은 데이터베이스에서 검색되므로 각 항목의 value 속성은 DB에있는 항목의 고유 한 ID로 설정됩니다.jQuery를 사용하여 DropDownList 값을 선택할 때 RangeValidator가 작동하지 않습니다.
RangeValidator 보이는 무언가 같이 :
<asp:rangevalidator id="ddRangeValidator" runat="server" ControlToValidate="ddMenu" ErrorMessage="Please select value in range" MinimumValue="1" MaximumValue="100000" Type="Integer">*</asp:rangevalidator>
나는 자동으로 jQuery를 예를 들어,이 값을 채우는 방법을
$("#ddMenu").val("An Option");
그러나이 방법을 사용하면 페이지를 게시하려고 할 때 범위 유효성 검사가 실패합니다. 그럼 내가 수동으로 해당 값을 선택하거나 다른 유효한 값을 선택하더라도 여전히 유효성을 검사하지 않습니다. 유효성 검사를 수행하는 유일한 방법은 유효하지 않은 값을 선택하고 유효한 값을 다시 선택하는 것입니다.
아이디어가 있으십니까?
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load, Me.Load
If Not Page.IsPostBack Then
Dim ds As New DataSet()
Dim myDbObject As New myDbObject()
ds = myDbObject.ToDataSet() // retrieves all objects from the database
// store the results in a temporary view to filter
Dim dv As DataView
dv = New DataView(ds.Tables(0), "IsLive = True", "ID", DataViewRowState.CurrentRows)
Dim i As Integer = 0
ddMenu.Items.Add("Select a value")
ddMenu.Items.Item(0).Value = 0
// add all objects from filtered list into drop down menu
For i = 0 To dv.Count - 1
With ddMenu.Items
// add a new item
.Add(dv.Item(i).Item("Name"))
// set the Value property as unique ID of object
.Item(i + 1).Value = dv.Item(i).Item("ID")
End With
Next
End If
End If
"... 범위 검증에 실패했습니다"는 의미는 무엇입니까? 그것은 오류 메시지를 보거나 실제로 평가할 때 아무 것도 보여주지 못한다는 점에서 실패합니까? – Juri
@ 주리, 미안, 분명히해야했다. 드롭 다운 메뉴의 값이 유효하지 않습니다. 즉, 컨트롤이 올바르게 검증되지 않았습니다. – James