Я пытаюсь вызвать обработчик обратной передачи, когда пользователь выбирает опцию из выпадающего списка select2.Когда я пытаюсь использовать код, показанный ниже, я получаю сообщение об ошибке:
"Недопустимый аргумент обратной передачи или обратного вызова. Проверка события включена с использованием в конфигурации или <% @ Page EnableEventValidation =" true "%> на страницеВ целях безопасности эта функция проверяет, что аргументы для событий обратной передачи или обратного вызова исходят от серверного элемента управления, который первоначально их представил. Если данные действительны и ожидаемы, используйте метод ClientScriptManager.RegisterForEventValidation, чтобы зарегистрировать данные обратной передачи или обратного вызова для проверки.. "
Я ищу совет относительно метода использования события select2 для запуска обратной передачи и, следовательно, для загрузки новых данных на основе выбора пользователя
Управление ASCX
<%@ Control Language="VB" AutoEventWireup="false" Inherits="uc_selector" EnableViewState="true" Codebehind="selector.ascx.vb" %>
<asp:TextBox ID="txtName" Visible="False" Runat="server" AutoPostBack="False" />
<asp:HiddenField ID="txtID" runat="server" />
<asp:ListBox ID="nameSelect" Runat="server" AutoPostBack="False" />
<script type="text/javascript">
$(document).ready(function() {
$("#<%=nameSelect.ClientID%>").select2({
minimumInputLength: 2,
width: 'resolve',
ajax: {
url: "<%=ResolveClientUrl("~/")%>MyEndpoint.ashx",
dataType: 'json',
data: function (params) {
return {
q: params.term
};
},
processResults: function (data) {
return {
results: $.map(data,
function(x) {
return {
id: x.Id,
text: x.Name
};
})
};
}
}
});
$("#<%=nameSelect.ClientID%>").on('select2:select', function (e) {
$("#<%=txtID.ClientID%>").val(e.params.data.id);
$("#<%=txtName.ClientID%>").val(e.params.data.text);
__doPostBack('<%=nameSelect.UniqueID%>', '');
});
});
</script>
Код сзади
Protected Sub name_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles nameSelect.TextChanged
RaiseEvent TextChanged(sender, e)
End Sub