2012-06-02 2 views
0

Visual Studio 2008 (.NET 3.5)의 제 웹 사이트에는 페이지에 두 개의 텍스트 상자가 있으며 두 가지 서로 다른 onblur 이벤트가 있습니다. 첫 번째 이벤트가 실행될 때 동시에 다른 이벤트도 실행됩니다. 왜 그런지 모르겠다. 여기에 코드가 있습니다. 왜 asp : textbox의 두 onblur 이벤트가 실행됩니까?

<asp:TextBox runat="server" ID="txtBK_CODE" Width="236px" 
     CssClass="inp-form" MaxLength="8" onblur="javascript:SearchBK();"></asp:TextBox> 
<asp:TextBox runat="server" ID="txtSL_CODE" Width="236px" 
     CssClass="inp-form" MaxLength="8"onblur="javascript:SearchSL();"></asp:TextBox> 

지금이 기능은
function SearchBK() { 
     var textInput = document.getElementById('<%=txtBK_CODE.ClientID %>'); 
     ValidateBKSLCode.ValidateBK_CODE(textInput.value, OnSearchCompleteBK, OnErrorBK); 
     loaded = true; 
} 

function OnErrorBK(result) { 
     alert(result.get_message()); 
} 

function OnSearchCompleteBK(result) { 
     document.getElementById('<%=lblBK_NAME.ClientID %>').innerHTML = ""; 
     document.getElementById('<%=lblBK_NAME.ClientID %>').innerHTML = result; 
} 

function SearchSL() { 
     var textInput = document.getElementById('<%=txtSL_CODE.ClientID %>'); 
     ValidateBKSLCode.ValidateSL_CODE(textInput.value, OnSearchCompleteSL, OnErrorSL); 
     loaded = true; 
} 
function OnErrorSL(result) { 
     alert(result.get_message()); 
} 

function OnSearchCompleteSL(result) { 
     document.getElementById('<%=lblSL_CODE.ClientID %>').innerHTML = ""; 
     document.getElementById('<%=lblSL_CODE.ClientID %>').innerHTML = result; 
} 

나는 레이블을했다하지만 여기를 작성하지 .. 코드 아래에 웹 서비스의 funcitons를 호출합니다. 또한 첫 번째 텍스트 상자에서 Tab 키를 누를 때 두 onblur 이벤트가 발생하지만 두 번째 탭에서 탭을 누르면 두 번째 함수가 실행됩니다. (javascript 태그도 사용하지만 여기서는 쓰지 않습니다.)이 페이지는 masterpage에 있으며 serice 참조를 masterpage의 scriptmanager입니다. 이상한 것은 다른 웹 사이트에서 잘 작동합니다 ... !! 나는 무엇이 없거나 바보 같은 실수를 했는가 ...? 감사

답변

0

설정 asp.net 텍스트 상자의 AutoPostBack = 거짓과 HTML 텍스트 상자처럼 작동됩니다 asp.net 텍스트 상자는 코드가 잘

작동합니다