내 문제는 SelectedValue가 포스트 백에서 ASP.NET에 전달되지 않는 드롭 다운 목록이 있음입니다. 페이지에서 jquery 변경 핸들러를 추출하고 옵션 선택을 분리하면 tho ": selected"도 새 옵션을 제공한다는 것을 알 수 있습니다. 스틱되지 않으므로 빈 옵션 값이 다음으로 전달됩니다. 서버.jquery : 선택한 선택 속성이 변경시 변경되지 않음
이 jsfiddle은 문제를 재현합니다. 목록에서 옵션을 선택한 다음 이동을 클릭하면 경고 상자에 표시된 html을보고 내가 무엇을하고 있는지 확인할 수 있습니다.
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$('#ddl').on('change', function (e) {
$('.sv').text($(this).find(":selected").attr('value'));
});
$('#go').click(function() { alert($('#ddl').html()) });
});
</script>
<select name="ddl" id="ddl">
<option selected="selected" value="">-- Choose --</option>
<option value="1">Degree</option>
<option value="2">HND</option>
<option value="16">HNC</option>
</select>
<div><span>SelectedValue: </span><span class="sv"></span></div>
<div><input id="go" type="button" value="go"/></div>
내가 잘못 뭐하는 거지 :
여기에 독립 페이지 버전입니까?
건배, .pd.
편집 :
usercontrol의 코드 배후. 셋업은 마스터 -> 페이지 -> TabControl-> UserControl-> DropDownList로
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
JSHelper.Add("/scripts/jquery-stuff.js", Me.Page)
If Not IsPostBack Then
bindDDL(ddl, True, "")
End If
End Sub
Public Shared Sub bindDDL(ByRef _ddl As DropDownList, Optional ByVal _incBlank As Boolean = False, Optional ByVal _valBlank As String = "")
_ddl.Items.Clear()
If _incBlank Then
_ddl.Items.Add(New ListItem("-- Choose --", _valBlank))
End If
_ddl.AppendDataBoundItems = True
_ddl.DataSource = QualificationTypeGetActive()
_ddl.DataTextField = "Description"
_ddl.DataValueField = "QualificationTypeID"
_ddl.DataBind()
End Sub
포스트 코드는. –