asp : RegularExpressionValidator가있는 asp : TextBox를 사용하여 숫자인지 확인합니다. 분명히 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는 오류를 발생시킵니다. 내가 JS에 추적 :
function ValidatorOnChange(event) {
...
}
및 event.fromElement, event.toElement, event.srcElement를 모두가 예외가 발생하는 null 인 것으로 나타났다. 내가 뭐 잘못 했어요? 어떤 해결책? 감사.
편집
은 ASP.NET 4 VS2010에서 잘 작동하는 MS의 버그를 입증합니다.
실행하려면 .net 처리기가 필요하거나 jQuery 하나만 필요합니까? –
@Nick Craver : $ (XXX) .change()는 모든 변경 이벤트를 트리거합니다. 그러나 왜 생성 된 js가 오류를 발생 시키는가? 나는 그것이 올바르게 발사되어야한다고 생각한다. –
대신에 $ ('[id $ = myText]')'$ ('# myText')를 사용하십시오. – Pointy