문제

ASP.NET 1.1에서 웹 페이지를 개발하고 있으며 사용자가 데이터베이스 레코드를 추가, 편집 및 삭제할 수있는 Datagrid가 있습니다. 바닥 글 로우에는 새 레코드를 추가 할 수 있도록 텍스트 상자가 포함되어 있습니다.

내가 정의한 각 열에 대해u003CItemTemplate> ,,u003CEditItemTemplate> 그리고u003CFooterItemTemplate> 집단. 내 ASPX 마크 업의 buteritemtemplate 및 editeTemtemplate 요소에는 텍스트 상자뿐만 아니라 필수 필드 볼리 디터 컨트롤이 포함되어 있습니다. (아래 참조)

<asp:TemplateColumn HeaderText="Offer Code">
  <ItemTemplate>
    <%# DataBinder.Eval(Container, "DataItem.OfferCode") %>
  </ItemTemplate>
  <FooterTemplate>
    <asp:TextBox ID="txtNewOfferCode" Runat="server" />
<asp:RequiredFieldValidator ID="reqNewOfferCode" ControlToValidate="txtNewOfferCode" Display="None" ErrorMessage="Please specify 'Offer Code'" Runat="server" />
  </FooterTemplate>
  <EditItemTemplate>
<asp:TextBox id=txtOfferCode Runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.OfferCode") %>' />
<asp:RequiredFieldValidator ID="reqOfferCode" ControlToValidate="txtOfferCode" Display="None" ErrorMessage="Please specify 'Offer Code'" Runat="server" />
  </EditItemTemplate>
</asp:TemplateColumn>

내가 가진 문제는 기존 레코드를 편집하려고 할 때 바닥 글로의 빈 필드가 유효성 검사를 방지하여 선택한 행의 후 및 업데이트를 방지한다는 것입니다.

도움이 되었습니까?

해결책

일반적으로 GridView는 새 행을 삽입 할 수 없습니다. 바닥 글을 사용하여 트릭을했습니다. 물론 GridView를 제출할 때 필드가 비어 있기 때문에 검증자가 프로세스를 차단합니다. GridView가 편집 모드로 이동하여 바닥 글의 유효성 검사기를 비활성화 할 때 이벤트를 가두어 야합니다. GridView 편집 모드를 떠날 때 활성화하는 것을 잊지 마십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top