2011-12-13 2 views
0

그래서 한 페이지를 가지고 있으며, 여러 개의 텍스트 상자, 링크 단추 및 단추가 있습니다. 현재 사용자는 텍스트 상자를 통해 해당 행의 데이터를 입력 할 수있는 링크 버튼 "편집"을 클릭합니다. 그러나 enter를 누르면 버튼 중 하나에 대한 이벤트가 시작됩니다 ... 이것은 전혀 바람직하지 않습니다. 분명히 이것은 기본 동작입니다.텍스트 상자에 입력 버튼을 제출할 때이 좋은 해결책입니까?

각 입력란을 연결하여 텍스트 상자가 별도의 양식없이 입력 된 특정 링크 버튼이나 버튼에 대해 작동하도록 할 수 있습니까?

이 작업을 수행 할 수없는 경우 버튼을 만들어 기본 양식 버튼으로 만들지 만 비활성화 및 숨기기를 선택하면 Enter 키를 눌러 아무 것도 제출하지 않습니다.

감사합니다.

답변

1

Button 컨트롤에서 UseSubmitBehavior 속성을 "false"로 설정할 수 있습니다. 그러면 버튼이 <input type="submit" /> 태그 대신 <input type="button" /> 태그로 렌더링됩니다. 결과적으로 Enter 키를 눌러도 단추에 실제로 포커스가 있지 않으면 단추가 눌러지지 않습니다.

<asp:Button runat="server" UseSubmitBehavior="false" ... /> 
1

각 텍스트 상자에 KeyPress 이벤트를 무시하고 Enter 키를 잡고 해당 단추의 코드를 실행할 수 있습니다.

if(e.KeyChar == '\n') 
    // execute button code 
1

별도의 패널에 입력하고 defaultbutton 속성을 사용하여 입력 버튼을 눌렀을 때 사용할 버튼을 패널에 알릴 수 있습니다.

+0

나는 이것이 가능한 해결책이라고 읽었지만, 다른 대답은 .aspx 페이지를 완전히 재 설계 한 것보다 합리적으로 보입니다. – OneFreeFitz