У меня есть asp: TextBox с asp: RegularExpressionValidator, чтобы проверить, является ли это числом. Очевидно, событие onchange будет привязано к этому текстовому полю при рендеринге. Также я добавляю событие изменения в $ (document) .ready, чтобы сделать некоторые вычисления, когда значение изменено.Запустить событие изменения текстового поля в jQuery
<asp:TextBox id="myText" runat="server" />
<asp:regularexpressionvalidator id="myRev" ControlToValidate="myText" runat="server">*</asp:regularexpressionvalidator>
$(document).ready(function(){
$('[id$=myText]').bind('change',function(){
//do something
}).change(); //force the change event at the very beginning
});
Моя функция будет выполнена позже, чем .net, генерируемые js из-за времени регистрации. Но asp.net js выдает ошибку. Я проследил в ЯШАХ:
function ValidatorOnChange(event) {
...
}
и обнаружил, что все event.fromElement, event.toElement, event.srcElement равны нуль, который вызывает исключение. Я сделал что-то не так? Любые решения? Благодарю.
EDIT
Это оказалось MS ошибка, работает нормально в ASP.NET 4 VS2010.
Вам нужен обработчик .net для запуска или только jQuery? –
@Nick Craver: $ (XXX) .change() вызовет все события изменения. Но почему сгенерированная js дает ошибку? Я думаю, что его нужно уволить правильно. –
Вместо '$ ('[id $ = myText]')' use '$ ('# myText')' – Pointy