2014-05-01 4 views
2

저는 무엇이든 마스터 컨텐트 페이지를 사용하지 않습니다. 간단한 aspx 페이지가 있습니다. 아직도 그것은TextBox가 현재 컨텍스트에 존재하지 않습니다.

가 이름 'txtFirstName'는 현재 컨텍스트

내 마크 업

<%@ Page Language="C#" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<script runat="server"> 

    protected void txtFirstName_TextChanged(object sender, EventArgs e) 
    { 
     string firstName = txtFirstName.Text; 
    } 
</script> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <asp:TextBox ID="txtFirstName" runat="server" OnTextChanged="txtFirstName_TextChanged"></asp:TextBox> 
    </form> 
</body> 
</html> 

에도 OnTextChanged 이벤트가 이해하지 못하는 properly.I을 발사한다에 존재하지 않습니다 보여줍니다 무슨 문제가 될 수 있니?

내가 검색 한 다른 비슷한 게시물은별로 도움이되지 못했습니다.

답변

0

<form runat="server"> 
    <asp:TextBox ID="txtFirstName" runat="server" text="" /> 
</form> 

http://www.w3schools.com/aspnet/aspnet_textbox.asp

protected void txtFirstName_TextChanged(object sender, EventArgs e) 
    { 
     Button btn = sender as Button; 
     string firstName = btn.Text; 
    } 
+0

나는 폼 태그를 적용했다. 여전히 동일한 오류가 발생했습니다 – user3487944

+0

C# – user2330270

+0

으로 편집 참조 이벤트 처리기에서 'this'는 컨트롤이 아니라 페이지를 참조합니다. 'sender' 매개 변수는 컨트롤에 대한 참조입니다. – Guffa

3

당신은 runat="Server"form 태그가 있어야 시도

제안하시기 바랍니다 .....

<form id="form1" runat="server"> 
    <asp:TextBox ID="txtFirstName" runat="server" text="" AutoPostBack="True"/> 
</form> 

protected void txtFirstName_TextChanged(object sender, EventArgs e) 
    { 
     string firstName = txtFirstName.Text; 
    } 

: - 1) <head> 태그 내부에 배치 스크립트 ..

2) Add `AutoPostBack="True"` to the textbox.. 
+0

양식 태그를 적용했습니다. 여전히 작동하지 않습니다 – user3487944

+1

@ user3487944, '작동하지 않음'이란 무엇입니까? 여전히 동일한 오류 또는 다른 문제가 있습니까? – Andrei

+0

예. 그것은 동일한 오류가 발생했습니다 – user3487944

관련 문제