2014-02-21 2 views
0

Когда пользователь загружает документ, его документ отправляется на утверждение суперсиону, а его документ появляется в повторителе. Затем я хочу, чтобы это имя документа было загружаемым. Когда администратор нажимает на имя документа, он будет загружен. Как я это сделал:название документа downloable в ретрансляторе

Вот HTML разметка:

<table class="CSSTableGenerator" border="0" cellpadding="0" cellspacing="0" id="results"> 
    <asp:Repeater ID="Repeater2" OnItemCommand="Repeater2_ItemCommand" 
     runat="server" onitemdatabound="Repeater2_ItemDataBound"> 
     <HeaderTemplate> 
      <tr> 

       <%-- <td> 
        DocumentID 
       </td>--%> 
       <td> 
        Document Name 
       </td> 
       <td> 
        File Name 
       </td> 
       <td> 
        Uploaded By 
       </td> 
       <td> 
        Uploaded Date 
       </td> 
       <td> 
        Email 
       </td> 

       <td> 
        Department 
       </td> 
       <td> 
        Status 

       </td> 

      </tr> 
     </HeaderTemplate> 
     <ItemTemplate> 
      <tr> 
       <asp:HiddenField ID="DocId" runat="server" Value='<%#DataBinder.Eval(Container.DataItem, "DocID")%>' /> 

       <td> 
        <asp:Label Id="DocName" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "DocumentName")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label Id="Uploadfile" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "Uploadfile")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label Id="Label1" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "UploadedBy")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label Id="UploadedDate" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "UploadedDate")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label Id="YourEamil" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "UserEmail")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label Id="DepType" runat="server" Text='<%#DataBinder.Eval(Container.DataItem, "Department")%>'></asp:Label> 
       </td> 
       <td> 
        <asp:Label ID="lblCountry" runat="server" Text='<%# Eval("ApproveID") %>' Visible = "false" /> 
        <asp:HiddenField ID="hfDepartmentId" runat="server" Value='<%# Eval("ApproveID") %>' /> 
        <asp:DropDownList ID="DropDownList4" runat="server" EnableViewState="true" class="vpb_dropdown1" DataTextField="ApproveType" DataValueField="ApproveID" AutoPostBack="true" OnSelectedIndexChanged="DropDownList4_SelectedIndexChanged"> 
         <asp:ListItem Text="Pending" selected="selected" Value="3"></asp:ListItem> 
         <asp:ListItem Text="Approve" Value="1"></asp:ListItem> 
         <asp:ListItem Text="Reject" Value="2"></asp:ListItem> 
        </asp:DropDownList> 
       </td> 
      </tr> 
     </ItemTemplate> 
    </asp:Repeater> 
</table> 

enter image description here

+0

Вы получаете информацию о файлах из таблицы? Если это так, вы можете использовать в шаблоне элемента (не в шаблоне главы)

DataBinder.Eval(Container.DataItem, "DocumentName")
Вы можете покинуть OnItemCommand и проверить имя команды в коде позади Но вам нужно загрузить этот шаблон только тогда, когда администратор вводит страницу – PlaceUserNameHere

+0

i dont get ur point – user3338484

+0

Вы посмотрели [этот пост] (http: // stackoverflow. com/questions/20202160/download-option-in-repeater-table? rq = 1)? –

ответ

0

Может быть, вы можете использовать <a> элемент на странице администратора и обеспечить путь к файлу в href="" где он загружает document.Than admin может загрузить документ с указанной ссылки <a>.

Этот подход также может содержать историю загрузки документов.

+0

как я это сделал – user3338484

Смежные вопросы