Passing an ID of a row in Repeater to submit button in ASP NET





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







1















Since I'm using many viewstates, I'm trying to stop relying on them because pages take forever to load. I have this repeater with a table and when I click a button it enables a form that has another repeater. I need to pass the ID of the row of the 1st repeater so i can update the data related to that item on submit button.



Note. The ID i need is on the 1st column of repeater



<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>


here is my code



this is my submit button



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string cnnStr = ConfigurationManager.ConnectionStrings["ValidacaoFormas_ConnectionString"].ConnectionString;

ADefinicao def = new ADefinicao();

def.ReferenciaInterna = txtRefInterna.Text;
def.Indice = txtIndice.Text;
def.Observacoes = txtObservacoes.Text;
def.isValid = "Sim";
def.DataValidacao = DateTime.Now.ToString("dd-MM-yyyy").ToString();

string nome = Session["Nome"].ToString();
int id = Convert.ToInt32(ViewState["id"]);

id = ADefinicao.UpdateADefinicao(nome, id, def);

ScriptManager.RegisterStartupScript(this, this.GetType(), "key_name", "ShowToast('success','Documento validado com sucesso.'); setTimeout(function(){window.location.href ='/Conta/Início.aspx'}, 3000);", true);
}
}


and this is the main repeater



<asp:Repeater ID="rptValidacao" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="rptValidacao_ItemCommand">
<HeaderTemplate>
<table id="tblValidarRegistos" class="table table-bordered table-striped table-hover dataTable text-center">
<thead class="thead-dark">
<tr>
<th class="text-center">Ref. Cliente</th>
<th class="text-center">Ref. Interna</th>
<th class="text-center">Índice</th>
<th class="text-center">Qtd. Formas</th>
<th class="text-center"></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>
<tr style="font-size:15px;">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>
<td>
<asp:Label ID="lblReferenciaInterna" runat="server" Text='<%# Eval("Ref_Interna") %>' />
</td>
<td>
<asp:Label ID="lblIndicie" runat="server" Text='<%# Eval("Indice") %>' />
</td>
<td>
<asp:Label ID="lblQTDFormas" runat="server" Text='<%# Eval("QTD_Formas") %>' />
</td>
<td>
<asp:ImageButton ID="ibtnValidar" runat="server" ImageUrl="/Images/Icones/success.png" CommandName="Validar" CommandArgument='<%# Eval("ID_Registo") %>' Width="25" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>


I was wondering if is there a way to pass an arguent from that repeater to this button



<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao"  OnClick="btnValidarFormulario_Click" />


EDIT.



This the the form that appears when img button clicked on repeater with some data and needs to be updated, it's a bit long so i only posted cause i was asked. The submit button is at the end. I only need the ID where all the data on the form comes from and pass it to the submit button



 <div id="divValidar" class="card card-danger shadow mx-auto custom-card-layout" visible="false" runat="server" style="min-width: 600px; max-width: 950px;">
<div class="card-header text-center custom-card-header">
<h3 class="card-title font-weight-bold">A - Definição</h3>
</div>
<!-- /.card-header -->

<!-- form start -->
<div class="card-body">

<div class="container">

<asp:ValidationSummary runat="server"
ID="ValidationSummary2"
DisplayMode="BulletList"
HeaderText="<b>Preencha todos os campos devidamente para proseguir.</b>"
ValidationGroup="vgADefinicao"
CssClass="alert validation-summary"
ShowSummary="true" />


<fieldset>
<legend>Informação Referêncial</legend>


<div class="row justify-content-center">

<div class="col-sm-4">
<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblRefCliente" Text="1. Referência Cliente" AssociatedControlID="txtRefCliente" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtRefCliente" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>


</div>
</div>

<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblRefInterna" Text="2. Referência Interna" AssociatedControlID="txtRefInterna" runat="server"></asp:Label>
<asp:TextBox ID="txtRefInterna" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Referência Interna"></asp:TextBox>
</div>
</div>


<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblIndice" Text="3. Índice" AssociatedControlID="txtIndice" runat="server"></asp:Label>
<asp:TextBox ID="txtIndice" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Indíce"></asp:TextBox>
</div>
</div>
</div>

</fieldset>

<fieldset>
<legend>Casquilhos e Formas - Quantidade</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6">
</div>

<div class="col-md-6 text-center">
<strong>5. Quantidade de Casquilhos</strong>
</div>
</div>

<div class="row justify-content-center row-eq-height">
<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblQtdFormas" Text="4. Quantidade de Formas" AssociatedControlID="txtQtdFormas" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtQtdFormas" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>

<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosFixos" Text="5.1 Fixos" AssociatedControlID="txtCasquilhosFixos" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosFixos" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosLivres" Text="5.2 Livres" AssociatedControlID="txtCasquilhosLivres" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosLivres" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>
</div>
</fieldset>


<fieldset>
<legend>Casquilhos e Formas - Diâmetros</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>6. Diâmetro dos casquilhos</strong>
</div>

<div class="col-md-6 text-center">
<strong>7. Diâmetro das formas</strong>
</div>

</div>


<div class="row justify-content-center">
<div class="col-md-6">
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoFixo" Text="6.1 Lado Fixo" AssociatedControlID="txtDiametroCasqLadoFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroCasqLadoFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoMovel" Text="7.2 Lado Móvel" AssociatedControlID="lblDiametroCasqLadoMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroCasqLadoMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasFixo" Text="7.1 Lado fixo" AssociatedControlID="txtDiametroFormasFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>


</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasMovel" Text="7.2 Lado Móvel" AssociatedControlID="txtDiametroFormasMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroFormasMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasCorpo" Text="7.2 Corpo" AssociatedControlID="txtDiametroFormasCorpo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasCorpo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>Cru
<small>(A preencher pela Extrusão)</small>
</legend>

<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>8. Informação do Cru</strong>
</div>

<div class="col-md-6 text-center">
<strong>8.3 Parâmetros do cru:</strong>
</div>

</div>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruBase" Text="8.1 Base" AssociatedControlID="txtCruBase" runat="server"></asp:Label>
<asp:TextBox ID="txtCruBase" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruLinha" Text="8.2 Linha" AssociatedControlID="txtCruLinha" runat="server"></asp:Label>
<asp:TextBox ID="txtCruLinha" CssClass="form-control form-control-smborder border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblMarcacaoContinua" Text="8.4 Marcação contínua" AssociatedControlID="txtMarcacaoContinua" runat="server" />
<small class="text-muted">(texto + cor)</small>
<asp:TextBox ID="txtMarcacaoContinua" TextMode="MultiLine" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true" />
</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruDiametro" Text="Diâmetro" AssociatedControlID="txtCruDiametro" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruDiametro" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruEspessura" Text="Espessura" AssociatedControlID="txtCruEspessura" runat="server"></asp:Label>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruEspessura" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>

</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblComprimento" Text="Comprimento" AssociatedControlID="txtComprimento" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtComprimento" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>9. Datas Previstas</legend>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasPreSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasPreSerie" Text="9.1 Formas Pré-Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasPreSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasSerie" Text="9.3 Formas Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>
</div>

</div>

<div class="col-md-6">


<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataAmostrasIniciais" runat="server" AssociatedControlID="txtReadOnlyDataAmostrasIniciais" Text="9.2 Amostras iniciais" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataAmostrasIniciais" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataArranqueProducao" runat="server" AssociatedControlID="txtReadOnlyDataArranqueProducao" Text="9.4 Arranque Produção" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataArranqueProducao" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>
</div>
</div>
</fieldset>

<fieldset>
<legend>Documentos</legend>

<div class="row justify-content-center">

<div class="col-md-12">



<asp:Repeater ID="rptAnexos" runat="Server" OnItemCommand="rptAnexos_ItemCommand">
<HeaderTemplate>
<table id="tblAnexos" class="table-sm table table-striped table-bordered text-center rounded" style="border-radius: 10px;">
<caption>Lista de Anexos</caption>
<thead class="thead-dark">
<tr>
<th>ID</th>
<th>Tipo Desenho</th>
<th>Nome Ficheiro</th>
<th>Inserido Por</th>
<th></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>

<tr style="font-size:small">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text=' <%# Eval("ID_Registo") %>' />
</td>
<td>
<asp:Label ID="lblTipoDesenho" runat="server" Text=' <%# Eval("Tipo") %>' />

</td>
<td>
<asp:Label ID="lblNomeAnexo" runat="server" Text='<%# Eval("NomeAnexo") %>' />
</td>
<td>
<asp:Label ID="lblPiloto" runat="server" Text='<%# Eval("Piloto") %>' />
</td>
<td class="text-center">
<asp:ImageButton runat="server" ImageUrl="/Images/Icones/download.png" Width="20" CommandName="Download" CommandArgument='<%# Eval("ID") %>' />
</td>
</tr>

</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

</div>
</div>

</fieldset>

<fieldset>
<legend>Observações</legend>

<div class="row justify-content-center row-eq-height">
<div class="col-md-12">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblObservacoes" Text="Observações" AssociatedControlID="txtObservacoes" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtObservacoes" CssClass="form-control form-control-sm border border-dark" runat="server" TextMode="MultiLine" Rows="3"></asp:TextBox>
<div class="valid-feedback">Success! You've done it.</div>
<i class="glyphicon glyphicon-ok form-control-feedback"></i>
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>

<asp:CustomValidator ID="cvObservacoes" runat="server" EnableClientScript="True" ValidationGroup="vgValidarDocumentacao" Display="Dynamic" ValidateEmptyText="True" ClientValidationFunction="CustomValidator" CssClass="server-validator" ControlToValidate="txtObservacoes"></asp:CustomValidator>
<asp:RequiredFieldValidator ID="rfvObservacoes" runat="server" CssClass="server-validator" ValidationGroup="vgValidarDocumentacao" SetFocusOnError="True" ControlToValidate="txtObservacoes" Text="Campo necessário." ErrorMessage="<b>Observações:</b> Campo necessário." Display="Dynamic"></asp:RequiredFieldValidator>


</div>

</div>
</div>

</fieldset>
</div>
</div>

<!-- /.card-body -->
<div class="card-footer custom-card-footer">
<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao" OnClick="btnValidarFormulario_Click" />
</div>
<!-- /.card-footer -->
</div>









share|improve this question

























  • What data would you like to transfer and how?

    – Lajos Arpad
    Jan 4 at 12:02











  • I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

    – Jackal
    Jan 4 at 12:03











  • Which IDs do you need from the repeater's ItemTemplate?

    – Lajos Arpad
    Jan 4 at 12:17











  • edited on top of the post the ID i need

    – Jackal
    Jan 4 at 12:21




















1















Since I'm using many viewstates, I'm trying to stop relying on them because pages take forever to load. I have this repeater with a table and when I click a button it enables a form that has another repeater. I need to pass the ID of the row of the 1st repeater so i can update the data related to that item on submit button.



Note. The ID i need is on the 1st column of repeater



<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>


here is my code



this is my submit button



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string cnnStr = ConfigurationManager.ConnectionStrings["ValidacaoFormas_ConnectionString"].ConnectionString;

ADefinicao def = new ADefinicao();

def.ReferenciaInterna = txtRefInterna.Text;
def.Indice = txtIndice.Text;
def.Observacoes = txtObservacoes.Text;
def.isValid = "Sim";
def.DataValidacao = DateTime.Now.ToString("dd-MM-yyyy").ToString();

string nome = Session["Nome"].ToString();
int id = Convert.ToInt32(ViewState["id"]);

id = ADefinicao.UpdateADefinicao(nome, id, def);

ScriptManager.RegisterStartupScript(this, this.GetType(), "key_name", "ShowToast('success','Documento validado com sucesso.'); setTimeout(function(){window.location.href ='/Conta/Início.aspx'}, 3000);", true);
}
}


and this is the main repeater



<asp:Repeater ID="rptValidacao" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="rptValidacao_ItemCommand">
<HeaderTemplate>
<table id="tblValidarRegistos" class="table table-bordered table-striped table-hover dataTable text-center">
<thead class="thead-dark">
<tr>
<th class="text-center">Ref. Cliente</th>
<th class="text-center">Ref. Interna</th>
<th class="text-center">Índice</th>
<th class="text-center">Qtd. Formas</th>
<th class="text-center"></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>
<tr style="font-size:15px;">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>
<td>
<asp:Label ID="lblReferenciaInterna" runat="server" Text='<%# Eval("Ref_Interna") %>' />
</td>
<td>
<asp:Label ID="lblIndicie" runat="server" Text='<%# Eval("Indice") %>' />
</td>
<td>
<asp:Label ID="lblQTDFormas" runat="server" Text='<%# Eval("QTD_Formas") %>' />
</td>
<td>
<asp:ImageButton ID="ibtnValidar" runat="server" ImageUrl="/Images/Icones/success.png" CommandName="Validar" CommandArgument='<%# Eval("ID_Registo") %>' Width="25" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>


I was wondering if is there a way to pass an arguent from that repeater to this button



<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao"  OnClick="btnValidarFormulario_Click" />


EDIT.



This the the form that appears when img button clicked on repeater with some data and needs to be updated, it's a bit long so i only posted cause i was asked. The submit button is at the end. I only need the ID where all the data on the form comes from and pass it to the submit button



 <div id="divValidar" class="card card-danger shadow mx-auto custom-card-layout" visible="false" runat="server" style="min-width: 600px; max-width: 950px;">
<div class="card-header text-center custom-card-header">
<h3 class="card-title font-weight-bold">A - Definição</h3>
</div>
<!-- /.card-header -->

<!-- form start -->
<div class="card-body">

<div class="container">

<asp:ValidationSummary runat="server"
ID="ValidationSummary2"
DisplayMode="BulletList"
HeaderText="<b>Preencha todos os campos devidamente para proseguir.</b>"
ValidationGroup="vgADefinicao"
CssClass="alert validation-summary"
ShowSummary="true" />


<fieldset>
<legend>Informação Referêncial</legend>


<div class="row justify-content-center">

<div class="col-sm-4">
<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblRefCliente" Text="1. Referência Cliente" AssociatedControlID="txtRefCliente" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtRefCliente" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>


</div>
</div>

<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblRefInterna" Text="2. Referência Interna" AssociatedControlID="txtRefInterna" runat="server"></asp:Label>
<asp:TextBox ID="txtRefInterna" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Referência Interna"></asp:TextBox>
</div>
</div>


<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblIndice" Text="3. Índice" AssociatedControlID="txtIndice" runat="server"></asp:Label>
<asp:TextBox ID="txtIndice" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Indíce"></asp:TextBox>
</div>
</div>
</div>

</fieldset>

<fieldset>
<legend>Casquilhos e Formas - Quantidade</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6">
</div>

<div class="col-md-6 text-center">
<strong>5. Quantidade de Casquilhos</strong>
</div>
</div>

<div class="row justify-content-center row-eq-height">
<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblQtdFormas" Text="4. Quantidade de Formas" AssociatedControlID="txtQtdFormas" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtQtdFormas" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>

<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosFixos" Text="5.1 Fixos" AssociatedControlID="txtCasquilhosFixos" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosFixos" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosLivres" Text="5.2 Livres" AssociatedControlID="txtCasquilhosLivres" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosLivres" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>
</div>
</fieldset>


<fieldset>
<legend>Casquilhos e Formas - Diâmetros</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>6. Diâmetro dos casquilhos</strong>
</div>

<div class="col-md-6 text-center">
<strong>7. Diâmetro das formas</strong>
</div>

</div>


<div class="row justify-content-center">
<div class="col-md-6">
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoFixo" Text="6.1 Lado Fixo" AssociatedControlID="txtDiametroCasqLadoFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroCasqLadoFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoMovel" Text="7.2 Lado Móvel" AssociatedControlID="lblDiametroCasqLadoMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroCasqLadoMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasFixo" Text="7.1 Lado fixo" AssociatedControlID="txtDiametroFormasFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>


</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasMovel" Text="7.2 Lado Móvel" AssociatedControlID="txtDiametroFormasMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroFormasMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasCorpo" Text="7.2 Corpo" AssociatedControlID="txtDiametroFormasCorpo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasCorpo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>Cru
<small>(A preencher pela Extrusão)</small>
</legend>

<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>8. Informação do Cru</strong>
</div>

<div class="col-md-6 text-center">
<strong>8.3 Parâmetros do cru:</strong>
</div>

</div>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruBase" Text="8.1 Base" AssociatedControlID="txtCruBase" runat="server"></asp:Label>
<asp:TextBox ID="txtCruBase" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruLinha" Text="8.2 Linha" AssociatedControlID="txtCruLinha" runat="server"></asp:Label>
<asp:TextBox ID="txtCruLinha" CssClass="form-control form-control-smborder border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblMarcacaoContinua" Text="8.4 Marcação contínua" AssociatedControlID="txtMarcacaoContinua" runat="server" />
<small class="text-muted">(texto + cor)</small>
<asp:TextBox ID="txtMarcacaoContinua" TextMode="MultiLine" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true" />
</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruDiametro" Text="Diâmetro" AssociatedControlID="txtCruDiametro" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruDiametro" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruEspessura" Text="Espessura" AssociatedControlID="txtCruEspessura" runat="server"></asp:Label>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruEspessura" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>

</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblComprimento" Text="Comprimento" AssociatedControlID="txtComprimento" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtComprimento" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>9. Datas Previstas</legend>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasPreSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasPreSerie" Text="9.1 Formas Pré-Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasPreSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasSerie" Text="9.3 Formas Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>
</div>

</div>

<div class="col-md-6">


<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataAmostrasIniciais" runat="server" AssociatedControlID="txtReadOnlyDataAmostrasIniciais" Text="9.2 Amostras iniciais" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataAmostrasIniciais" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataArranqueProducao" runat="server" AssociatedControlID="txtReadOnlyDataArranqueProducao" Text="9.4 Arranque Produção" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataArranqueProducao" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>
</div>
</div>
</fieldset>

<fieldset>
<legend>Documentos</legend>

<div class="row justify-content-center">

<div class="col-md-12">



<asp:Repeater ID="rptAnexos" runat="Server" OnItemCommand="rptAnexos_ItemCommand">
<HeaderTemplate>
<table id="tblAnexos" class="table-sm table table-striped table-bordered text-center rounded" style="border-radius: 10px;">
<caption>Lista de Anexos</caption>
<thead class="thead-dark">
<tr>
<th>ID</th>
<th>Tipo Desenho</th>
<th>Nome Ficheiro</th>
<th>Inserido Por</th>
<th></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>

<tr style="font-size:small">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text=' <%# Eval("ID_Registo") %>' />
</td>
<td>
<asp:Label ID="lblTipoDesenho" runat="server" Text=' <%# Eval("Tipo") %>' />

</td>
<td>
<asp:Label ID="lblNomeAnexo" runat="server" Text='<%# Eval("NomeAnexo") %>' />
</td>
<td>
<asp:Label ID="lblPiloto" runat="server" Text='<%# Eval("Piloto") %>' />
</td>
<td class="text-center">
<asp:ImageButton runat="server" ImageUrl="/Images/Icones/download.png" Width="20" CommandName="Download" CommandArgument='<%# Eval("ID") %>' />
</td>
</tr>

</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

</div>
</div>

</fieldset>

<fieldset>
<legend>Observações</legend>

<div class="row justify-content-center row-eq-height">
<div class="col-md-12">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblObservacoes" Text="Observações" AssociatedControlID="txtObservacoes" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtObservacoes" CssClass="form-control form-control-sm border border-dark" runat="server" TextMode="MultiLine" Rows="3"></asp:TextBox>
<div class="valid-feedback">Success! You've done it.</div>
<i class="glyphicon glyphicon-ok form-control-feedback"></i>
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>

<asp:CustomValidator ID="cvObservacoes" runat="server" EnableClientScript="True" ValidationGroup="vgValidarDocumentacao" Display="Dynamic" ValidateEmptyText="True" ClientValidationFunction="CustomValidator" CssClass="server-validator" ControlToValidate="txtObservacoes"></asp:CustomValidator>
<asp:RequiredFieldValidator ID="rfvObservacoes" runat="server" CssClass="server-validator" ValidationGroup="vgValidarDocumentacao" SetFocusOnError="True" ControlToValidate="txtObservacoes" Text="Campo necessário." ErrorMessage="<b>Observações:</b> Campo necessário." Display="Dynamic"></asp:RequiredFieldValidator>


</div>

</div>
</div>

</fieldset>
</div>
</div>

<!-- /.card-body -->
<div class="card-footer custom-card-footer">
<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao" OnClick="btnValidarFormulario_Click" />
</div>
<!-- /.card-footer -->
</div>









share|improve this question

























  • What data would you like to transfer and how?

    – Lajos Arpad
    Jan 4 at 12:02











  • I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

    – Jackal
    Jan 4 at 12:03











  • Which IDs do you need from the repeater's ItemTemplate?

    – Lajos Arpad
    Jan 4 at 12:17











  • edited on top of the post the ID i need

    – Jackal
    Jan 4 at 12:21
















1












1








1








Since I'm using many viewstates, I'm trying to stop relying on them because pages take forever to load. I have this repeater with a table and when I click a button it enables a form that has another repeater. I need to pass the ID of the row of the 1st repeater so i can update the data related to that item on submit button.



Note. The ID i need is on the 1st column of repeater



<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>


here is my code



this is my submit button



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string cnnStr = ConfigurationManager.ConnectionStrings["ValidacaoFormas_ConnectionString"].ConnectionString;

ADefinicao def = new ADefinicao();

def.ReferenciaInterna = txtRefInterna.Text;
def.Indice = txtIndice.Text;
def.Observacoes = txtObservacoes.Text;
def.isValid = "Sim";
def.DataValidacao = DateTime.Now.ToString("dd-MM-yyyy").ToString();

string nome = Session["Nome"].ToString();
int id = Convert.ToInt32(ViewState["id"]);

id = ADefinicao.UpdateADefinicao(nome, id, def);

ScriptManager.RegisterStartupScript(this, this.GetType(), "key_name", "ShowToast('success','Documento validado com sucesso.'); setTimeout(function(){window.location.href ='/Conta/Início.aspx'}, 3000);", true);
}
}


and this is the main repeater



<asp:Repeater ID="rptValidacao" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="rptValidacao_ItemCommand">
<HeaderTemplate>
<table id="tblValidarRegistos" class="table table-bordered table-striped table-hover dataTable text-center">
<thead class="thead-dark">
<tr>
<th class="text-center">Ref. Cliente</th>
<th class="text-center">Ref. Interna</th>
<th class="text-center">Índice</th>
<th class="text-center">Qtd. Formas</th>
<th class="text-center"></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>
<tr style="font-size:15px;">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>
<td>
<asp:Label ID="lblReferenciaInterna" runat="server" Text='<%# Eval("Ref_Interna") %>' />
</td>
<td>
<asp:Label ID="lblIndicie" runat="server" Text='<%# Eval("Indice") %>' />
</td>
<td>
<asp:Label ID="lblQTDFormas" runat="server" Text='<%# Eval("QTD_Formas") %>' />
</td>
<td>
<asp:ImageButton ID="ibtnValidar" runat="server" ImageUrl="/Images/Icones/success.png" CommandName="Validar" CommandArgument='<%# Eval("ID_Registo") %>' Width="25" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>


I was wondering if is there a way to pass an arguent from that repeater to this button



<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao"  OnClick="btnValidarFormulario_Click" />


EDIT.



This the the form that appears when img button clicked on repeater with some data and needs to be updated, it's a bit long so i only posted cause i was asked. The submit button is at the end. I only need the ID where all the data on the form comes from and pass it to the submit button



 <div id="divValidar" class="card card-danger shadow mx-auto custom-card-layout" visible="false" runat="server" style="min-width: 600px; max-width: 950px;">
<div class="card-header text-center custom-card-header">
<h3 class="card-title font-weight-bold">A - Definição</h3>
</div>
<!-- /.card-header -->

<!-- form start -->
<div class="card-body">

<div class="container">

<asp:ValidationSummary runat="server"
ID="ValidationSummary2"
DisplayMode="BulletList"
HeaderText="<b>Preencha todos os campos devidamente para proseguir.</b>"
ValidationGroup="vgADefinicao"
CssClass="alert validation-summary"
ShowSummary="true" />


<fieldset>
<legend>Informação Referêncial</legend>


<div class="row justify-content-center">

<div class="col-sm-4">
<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblRefCliente" Text="1. Referência Cliente" AssociatedControlID="txtRefCliente" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtRefCliente" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>


</div>
</div>

<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblRefInterna" Text="2. Referência Interna" AssociatedControlID="txtRefInterna" runat="server"></asp:Label>
<asp:TextBox ID="txtRefInterna" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Referência Interna"></asp:TextBox>
</div>
</div>


<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblIndice" Text="3. Índice" AssociatedControlID="txtIndice" runat="server"></asp:Label>
<asp:TextBox ID="txtIndice" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Indíce"></asp:TextBox>
</div>
</div>
</div>

</fieldset>

<fieldset>
<legend>Casquilhos e Formas - Quantidade</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6">
</div>

<div class="col-md-6 text-center">
<strong>5. Quantidade de Casquilhos</strong>
</div>
</div>

<div class="row justify-content-center row-eq-height">
<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblQtdFormas" Text="4. Quantidade de Formas" AssociatedControlID="txtQtdFormas" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtQtdFormas" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>

<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosFixos" Text="5.1 Fixos" AssociatedControlID="txtCasquilhosFixos" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosFixos" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosLivres" Text="5.2 Livres" AssociatedControlID="txtCasquilhosLivres" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosLivres" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>
</div>
</fieldset>


<fieldset>
<legend>Casquilhos e Formas - Diâmetros</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>6. Diâmetro dos casquilhos</strong>
</div>

<div class="col-md-6 text-center">
<strong>7. Diâmetro das formas</strong>
</div>

</div>


<div class="row justify-content-center">
<div class="col-md-6">
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoFixo" Text="6.1 Lado Fixo" AssociatedControlID="txtDiametroCasqLadoFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroCasqLadoFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoMovel" Text="7.2 Lado Móvel" AssociatedControlID="lblDiametroCasqLadoMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroCasqLadoMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasFixo" Text="7.1 Lado fixo" AssociatedControlID="txtDiametroFormasFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>


</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasMovel" Text="7.2 Lado Móvel" AssociatedControlID="txtDiametroFormasMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroFormasMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasCorpo" Text="7.2 Corpo" AssociatedControlID="txtDiametroFormasCorpo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasCorpo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>Cru
<small>(A preencher pela Extrusão)</small>
</legend>

<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>8. Informação do Cru</strong>
</div>

<div class="col-md-6 text-center">
<strong>8.3 Parâmetros do cru:</strong>
</div>

</div>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruBase" Text="8.1 Base" AssociatedControlID="txtCruBase" runat="server"></asp:Label>
<asp:TextBox ID="txtCruBase" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruLinha" Text="8.2 Linha" AssociatedControlID="txtCruLinha" runat="server"></asp:Label>
<asp:TextBox ID="txtCruLinha" CssClass="form-control form-control-smborder border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblMarcacaoContinua" Text="8.4 Marcação contínua" AssociatedControlID="txtMarcacaoContinua" runat="server" />
<small class="text-muted">(texto + cor)</small>
<asp:TextBox ID="txtMarcacaoContinua" TextMode="MultiLine" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true" />
</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruDiametro" Text="Diâmetro" AssociatedControlID="txtCruDiametro" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruDiametro" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruEspessura" Text="Espessura" AssociatedControlID="txtCruEspessura" runat="server"></asp:Label>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruEspessura" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>

</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblComprimento" Text="Comprimento" AssociatedControlID="txtComprimento" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtComprimento" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>9. Datas Previstas</legend>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasPreSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasPreSerie" Text="9.1 Formas Pré-Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasPreSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasSerie" Text="9.3 Formas Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>
</div>

</div>

<div class="col-md-6">


<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataAmostrasIniciais" runat="server" AssociatedControlID="txtReadOnlyDataAmostrasIniciais" Text="9.2 Amostras iniciais" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataAmostrasIniciais" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataArranqueProducao" runat="server" AssociatedControlID="txtReadOnlyDataArranqueProducao" Text="9.4 Arranque Produção" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataArranqueProducao" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>
</div>
</div>
</fieldset>

<fieldset>
<legend>Documentos</legend>

<div class="row justify-content-center">

<div class="col-md-12">



<asp:Repeater ID="rptAnexos" runat="Server" OnItemCommand="rptAnexos_ItemCommand">
<HeaderTemplate>
<table id="tblAnexos" class="table-sm table table-striped table-bordered text-center rounded" style="border-radius: 10px;">
<caption>Lista de Anexos</caption>
<thead class="thead-dark">
<tr>
<th>ID</th>
<th>Tipo Desenho</th>
<th>Nome Ficheiro</th>
<th>Inserido Por</th>
<th></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>

<tr style="font-size:small">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text=' <%# Eval("ID_Registo") %>' />
</td>
<td>
<asp:Label ID="lblTipoDesenho" runat="server" Text=' <%# Eval("Tipo") %>' />

</td>
<td>
<asp:Label ID="lblNomeAnexo" runat="server" Text='<%# Eval("NomeAnexo") %>' />
</td>
<td>
<asp:Label ID="lblPiloto" runat="server" Text='<%# Eval("Piloto") %>' />
</td>
<td class="text-center">
<asp:ImageButton runat="server" ImageUrl="/Images/Icones/download.png" Width="20" CommandName="Download" CommandArgument='<%# Eval("ID") %>' />
</td>
</tr>

</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

</div>
</div>

</fieldset>

<fieldset>
<legend>Observações</legend>

<div class="row justify-content-center row-eq-height">
<div class="col-md-12">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblObservacoes" Text="Observações" AssociatedControlID="txtObservacoes" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtObservacoes" CssClass="form-control form-control-sm border border-dark" runat="server" TextMode="MultiLine" Rows="3"></asp:TextBox>
<div class="valid-feedback">Success! You've done it.</div>
<i class="glyphicon glyphicon-ok form-control-feedback"></i>
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>

<asp:CustomValidator ID="cvObservacoes" runat="server" EnableClientScript="True" ValidationGroup="vgValidarDocumentacao" Display="Dynamic" ValidateEmptyText="True" ClientValidationFunction="CustomValidator" CssClass="server-validator" ControlToValidate="txtObservacoes"></asp:CustomValidator>
<asp:RequiredFieldValidator ID="rfvObservacoes" runat="server" CssClass="server-validator" ValidationGroup="vgValidarDocumentacao" SetFocusOnError="True" ControlToValidate="txtObservacoes" Text="Campo necessário." ErrorMessage="<b>Observações:</b> Campo necessário." Display="Dynamic"></asp:RequiredFieldValidator>


</div>

</div>
</div>

</fieldset>
</div>
</div>

<!-- /.card-body -->
<div class="card-footer custom-card-footer">
<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao" OnClick="btnValidarFormulario_Click" />
</div>
<!-- /.card-footer -->
</div>









share|improve this question
















Since I'm using many viewstates, I'm trying to stop relying on them because pages take forever to load. I have this repeater with a table and when I click a button it enables a form that has another repeater. I need to pass the ID of the row of the 1st repeater so i can update the data related to that item on submit button.



Note. The ID i need is on the 1st column of repeater



<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>


here is my code



this is my submit button



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string cnnStr = ConfigurationManager.ConnectionStrings["ValidacaoFormas_ConnectionString"].ConnectionString;

ADefinicao def = new ADefinicao();

def.ReferenciaInterna = txtRefInterna.Text;
def.Indice = txtIndice.Text;
def.Observacoes = txtObservacoes.Text;
def.isValid = "Sim";
def.DataValidacao = DateTime.Now.ToString("dd-MM-yyyy").ToString();

string nome = Session["Nome"].ToString();
int id = Convert.ToInt32(ViewState["id"]);

id = ADefinicao.UpdateADefinicao(nome, id, def);

ScriptManager.RegisterStartupScript(this, this.GetType(), "key_name", "ShowToast('success','Documento validado com sucesso.'); setTimeout(function(){window.location.href ='/Conta/Início.aspx'}, 3000);", true);
}
}


and this is the main repeater



<asp:Repeater ID="rptValidacao" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="rptValidacao_ItemCommand">
<HeaderTemplate>
<table id="tblValidarRegistos" class="table table-bordered table-striped table-hover dataTable text-center">
<thead class="thead-dark">
<tr>
<th class="text-center">Ref. Cliente</th>
<th class="text-center">Ref. Interna</th>
<th class="text-center">Índice</th>
<th class="text-center">Qtd. Formas</th>
<th class="text-center"></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>
<tr style="font-size:15px;">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text='<%# Eval("ID_Registo") %>' Style="display: none;" />
<asp:Label ID="lblReferenciaCliente" runat="server" Text='<%# Eval("Ref_Cliente") %>' />
</td>
<td>
<asp:Label ID="lblReferenciaInterna" runat="server" Text='<%# Eval("Ref_Interna") %>' />
</td>
<td>
<asp:Label ID="lblIndicie" runat="server" Text='<%# Eval("Indice") %>' />
</td>
<td>
<asp:Label ID="lblQTDFormas" runat="server" Text='<%# Eval("QTD_Formas") %>' />
</td>
<td>
<asp:ImageButton ID="ibtnValidar" runat="server" ImageUrl="/Images/Icones/success.png" CommandName="Validar" CommandArgument='<%# Eval("ID_Registo") %>' Width="25" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>


I was wondering if is there a way to pass an arguent from that repeater to this button



<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao"  OnClick="btnValidarFormulario_Click" />


EDIT.



This the the form that appears when img button clicked on repeater with some data and needs to be updated, it's a bit long so i only posted cause i was asked. The submit button is at the end. I only need the ID where all the data on the form comes from and pass it to the submit button



 <div id="divValidar" class="card card-danger shadow mx-auto custom-card-layout" visible="false" runat="server" style="min-width: 600px; max-width: 950px;">
<div class="card-header text-center custom-card-header">
<h3 class="card-title font-weight-bold">A - Definição</h3>
</div>
<!-- /.card-header -->

<!-- form start -->
<div class="card-body">

<div class="container">

<asp:ValidationSummary runat="server"
ID="ValidationSummary2"
DisplayMode="BulletList"
HeaderText="<b>Preencha todos os campos devidamente para proseguir.</b>"
ValidationGroup="vgADefinicao"
CssClass="alert validation-summary"
ShowSummary="true" />


<fieldset>
<legend>Informação Referêncial</legend>


<div class="row justify-content-center">

<div class="col-sm-4">
<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblRefCliente" Text="1. Referência Cliente" AssociatedControlID="txtRefCliente" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtRefCliente" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>


</div>
</div>

<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblRefInterna" Text="2. Referência Interna" AssociatedControlID="txtRefInterna" runat="server"></asp:Label>
<asp:TextBox ID="txtRefInterna" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Referência Interna"></asp:TextBox>
</div>
</div>


<div class="col-sm-4">
<div class="form-group col-10 mx-auto">
<asp:Label ID="lblIndice" Text="3. Índice" AssociatedControlID="txtIndice" runat="server"></asp:Label>
<asp:TextBox ID="txtIndice" CssClass="form-control form-control-sm border border-dark" runat="server" placeholder="Indíce"></asp:TextBox>
</div>
</div>
</div>

</fieldset>

<fieldset>
<legend>Casquilhos e Formas - Quantidade</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6">
</div>

<div class="col-md-6 text-center">
<strong>5. Quantidade de Casquilhos</strong>
</div>
</div>

<div class="row justify-content-center row-eq-height">
<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblQtdFormas" Text="4. Quantidade de Formas" AssociatedControlID="txtQtdFormas" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtQtdFormas" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>

<div class="col-md-6">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosFixos" Text="5.1 Fixos" AssociatedControlID="txtCasquilhosFixos" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosFixos" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblCasquilhosLivres" Text="5.2 Livres" AssociatedControlID="txtCasquilhosLivres" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtCasquilhosLivres" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>

</div>

</div>
</div>
</fieldset>


<fieldset>
<legend>Casquilhos e Formas - Diâmetros</legend>


<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>6. Diâmetro dos casquilhos</strong>
</div>

<div class="col-md-6 text-center">
<strong>7. Diâmetro das formas</strong>
</div>

</div>


<div class="row justify-content-center">
<div class="col-md-6">
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoFixo" Text="6.1 Lado Fixo" AssociatedControlID="txtDiametroCasqLadoFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroCasqLadoFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroCasqLadoMovel" Text="7.2 Lado Móvel" AssociatedControlID="lblDiametroCasqLadoMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroCasqLadoMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasFixo" Text="7.1 Lado fixo" AssociatedControlID="txtDiametroFormasFixo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasFixo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>


</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasMovel" Text="7.2 Lado Móvel" AssociatedControlID="txtDiametroFormasMovel" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtDiametroFormasMovel" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDiametroFormasCorpo" Text="7.2 Corpo" AssociatedControlID="txtDiametroFormasCorpo" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">

<asp:TextBox ID="txtDiametroFormasCorpo" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>

</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>Cru
<small>(A preencher pela Extrusão)</small>
</legend>

<div class="row justify-content-center pb-4">

<div class="col-md-6 text-center">
<strong>8. Informação do Cru</strong>
</div>

<div class="col-md-6 text-center">
<strong>8.3 Parâmetros do cru:</strong>
</div>

</div>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruBase" Text="8.1 Base" AssociatedControlID="txtCruBase" runat="server"></asp:Label>
<asp:TextBox ID="txtCruBase" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruLinha" Text="8.2 Linha" AssociatedControlID="txtCruLinha" runat="server"></asp:Label>
<asp:TextBox ID="txtCruLinha" CssClass="form-control form-control-smborder border-dark" runat="server" ReadOnly="true"></asp:TextBox>
</div>

<div class="form-group col-10 mx-auto text-center">
<asp:Label ID="lblMarcacaoContinua" Text="8.4 Marcação contínua" AssociatedControlID="txtMarcacaoContinua" runat="server" />
<small class="text-muted">(texto + cor)</small>
<asp:TextBox ID="txtMarcacaoContinua" TextMode="MultiLine" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true" />
</div>

</div>

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruDiametro" Text="Diâmetro" AssociatedControlID="txtCruDiametro" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruDiametro" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblCruEspessura" Text="Espessura" AssociatedControlID="txtCruEspessura" runat="server"></asp:Label>

<div class="input-group input-group-sm">
<asp:TextBox ID="txtCruEspessura" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>

</div>
</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblComprimento" Text="Comprimento" AssociatedControlID="txtComprimento" runat="server"></asp:Label>
<div class="input-group input-group-sm">
<asp:TextBox ID="txtComprimento" CssClass="form-control form-control-sm border border-dark" runat="server" ReadOnly="true"></asp:TextBox>
<div class="input-group-append border border-dark">
<span class="input-group-text"><strong>mm</strong></span>
</div>
</div>
</div>
</div>
</div>

</fieldset>


<fieldset>
<legend>9. Datas Previstas</legend>

<div class="row justify-content-center">

<div class="col-md-6">

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasPreSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasPreSerie" Text="9.1 Formas Pré-Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasPreSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataFormasSerie" runat="server" AssociatedControlID="txtReadOnlyDataFormasSerie" Text="9.3 Formas Série" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataFormasSerie" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>
</div>

</div>

<div class="col-md-6">


<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataAmostrasIniciais" runat="server" AssociatedControlID="txtReadOnlyDataAmostrasIniciais" Text="9.2 Amostras iniciais" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataAmostrasIniciais" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>

<div class="form-group col-6 mx-auto text-center">
<asp:Label ID="lblDataArranqueProducao" runat="server" AssociatedControlID="txtReadOnlyDataArranqueProducao" Text="9.4 Arranque Produção" />
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<div class="input-group input-group-sm">
<div class="input-group-prepend border border-dark">
<span class="input-group-text"><i class="far fa-calendar-alt"></i></span>
</div>
<asp:TextBox ID="txtReadOnlyDataArranqueProducao" runat="server" class="form-control form-control-sm border border-dark" ReadOnly="true" />
</div>

</div>
</div>
</div>
</fieldset>

<fieldset>
<legend>Documentos</legend>

<div class="row justify-content-center">

<div class="col-md-12">



<asp:Repeater ID="rptAnexos" runat="Server" OnItemCommand="rptAnexos_ItemCommand">
<HeaderTemplate>
<table id="tblAnexos" class="table-sm table table-striped table-bordered text-center rounded" style="border-radius: 10px;">
<caption>Lista de Anexos</caption>
<thead class="thead-dark">
<tr>
<th>ID</th>
<th>Tipo Desenho</th>
<th>Nome Ficheiro</th>
<th>Inserido Por</th>
<th></th>
</tr>
</thead>
</HeaderTemplate>
<ItemTemplate>

<tr style="font-size:small">
<td>
<asp:Label ID="lblIdRegisto" runat="server" Text=' <%# Eval("ID_Registo") %>' />
</td>
<td>
<asp:Label ID="lblTipoDesenho" runat="server" Text=' <%# Eval("Tipo") %>' />

</td>
<td>
<asp:Label ID="lblNomeAnexo" runat="server" Text='<%# Eval("NomeAnexo") %>' />
</td>
<td>
<asp:Label ID="lblPiloto" runat="server" Text='<%# Eval("Piloto") %>' />
</td>
<td class="text-center">
<asp:ImageButton runat="server" ImageUrl="/Images/Icones/download.png" Width="20" CommandName="Download" CommandArgument='<%# Eval("ID") %>' />
</td>
</tr>

</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>

</div>
</div>

</fieldset>

<fieldset>
<legend>Observações</legend>

<div class="row justify-content-center row-eq-height">
<div class="col-md-12">


<div class="form-group col-7 mx-auto text-center">
<asp:Label ID="lblObservacoes" Text="Observações" AssociatedControlID="txtObservacoes" runat="server"></asp:Label>
<i class="fas fa-asterisk text-danger mb-2" style="font-size: 8px;"></i>
<asp:TextBox ID="txtObservacoes" CssClass="form-control form-control-sm border border-dark" runat="server" TextMode="MultiLine" Rows="3"></asp:TextBox>
<div class="valid-feedback">Success! You've done it.</div>
<i class="glyphicon glyphicon-ok form-control-feedback"></i>
<div class="valid-feedback feedback-icon">
<i class="fa fa-check"></i>
</div>
<div class="invalid-feedback feedback-icon">
<i class="fa fa-times"></i>
</div>

<asp:CustomValidator ID="cvObservacoes" runat="server" EnableClientScript="True" ValidationGroup="vgValidarDocumentacao" Display="Dynamic" ValidateEmptyText="True" ClientValidationFunction="CustomValidator" CssClass="server-validator" ControlToValidate="txtObservacoes"></asp:CustomValidator>
<asp:RequiredFieldValidator ID="rfvObservacoes" runat="server" CssClass="server-validator" ValidationGroup="vgValidarDocumentacao" SetFocusOnError="True" ControlToValidate="txtObservacoes" Text="Campo necessário." ErrorMessage="<b>Observações:</b> Campo necessário." Display="Dynamic"></asp:RequiredFieldValidator>


</div>

</div>
</div>

</fieldset>
</div>
</div>

<!-- /.card-body -->
<div class="card-footer custom-card-footer">
<asp:Button ID="btnValidarFormulario" CssClass="submit-button font-weight-bold" runat="server" Text="Validar Documentação" ValidationGroup="vgValidarDocumentacao" OnClick="btnValidarFormulario_Click" />
</div>
<!-- /.card-footer -->
</div>






c# asp.net webforms






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 4 at 12:22







Jackal

















asked Jan 4 at 11:58









JackalJackal

264112




264112













  • What data would you like to transfer and how?

    – Lajos Arpad
    Jan 4 at 12:02











  • I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

    – Jackal
    Jan 4 at 12:03











  • Which IDs do you need from the repeater's ItemTemplate?

    – Lajos Arpad
    Jan 4 at 12:17











  • edited on top of the post the ID i need

    – Jackal
    Jan 4 at 12:21





















  • What data would you like to transfer and how?

    – Lajos Arpad
    Jan 4 at 12:02











  • I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

    – Jackal
    Jan 4 at 12:03











  • Which IDs do you need from the repeater's ItemTemplate?

    – Lajos Arpad
    Jan 4 at 12:17











  • edited on top of the post the ID i need

    – Jackal
    Jan 4 at 12:21



















What data would you like to transfer and how?

– Lajos Arpad
Jan 4 at 12:02





What data would you like to transfer and how?

– Lajos Arpad
Jan 4 at 12:02













I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

– Jackal
Jan 4 at 12:03





I will edit my post because I thought the form div that appears when button click on repeater wasn't necessary.

– Jackal
Jan 4 at 12:03













Which IDs do you need from the repeater's ItemTemplate?

– Lajos Arpad
Jan 4 at 12:17





Which IDs do you need from the repeater's ItemTemplate?

– Lajos Arpad
Jan 4 at 12:17













edited on top of the post the ID i need

– Jackal
Jan 4 at 12:21







edited on top of the post the ID i need

– Jackal
Jan 4 at 12:21














2 Answers
2






active

oldest

votes


















2














You can place a Label in an ItemTemplate and set the Visibility to false.



<asp:Repeater ID="rptValidacao" runat="server">
<ItemTemplate>
<asp:Label ID="LabelID" runat="server" Text='<%# Eval("id") %>' Visible="false"></asp:Label>
</ItemTemplate>
</asp:Repeater>


But the Label still exists with the correct value if you use FindCOntrol in the Button Click event



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
Label lbl = rptValidacao.Items[i].FindControl("LabelID") as Label;
}


You should also look into DataKeys. But a Repeater cannot use them.






share|improve this answer
























  • Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

    – Jackal
    Jan 4 at 12:38



















1














A solution is to create a HiddenField and on data bind of the repeater yourHiddenField.Value will be populated to something like:



3,4,7,12



and then on button click split the values in the hidden field. You can do this even on the client-side if the hidden field is populated via Javascript before submission is executed.






share|improve this answer



















  • 1





    I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

    – Jackal
    Jan 4 at 12:38












Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54038546%2fpassing-an-id-of-a-row-in-repeater-to-submit-button-in-asp-net%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









2














You can place a Label in an ItemTemplate and set the Visibility to false.



<asp:Repeater ID="rptValidacao" runat="server">
<ItemTemplate>
<asp:Label ID="LabelID" runat="server" Text='<%# Eval("id") %>' Visible="false"></asp:Label>
</ItemTemplate>
</asp:Repeater>


But the Label still exists with the correct value if you use FindCOntrol in the Button Click event



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
Label lbl = rptValidacao.Items[i].FindControl("LabelID") as Label;
}


You should also look into DataKeys. But a Repeater cannot use them.






share|improve this answer
























  • Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

    – Jackal
    Jan 4 at 12:38
















2














You can place a Label in an ItemTemplate and set the Visibility to false.



<asp:Repeater ID="rptValidacao" runat="server">
<ItemTemplate>
<asp:Label ID="LabelID" runat="server" Text='<%# Eval("id") %>' Visible="false"></asp:Label>
</ItemTemplate>
</asp:Repeater>


But the Label still exists with the correct value if you use FindCOntrol in the Button Click event



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
Label lbl = rptValidacao.Items[i].FindControl("LabelID") as Label;
}


You should also look into DataKeys. But a Repeater cannot use them.






share|improve this answer
























  • Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

    – Jackal
    Jan 4 at 12:38














2












2








2







You can place a Label in an ItemTemplate and set the Visibility to false.



<asp:Repeater ID="rptValidacao" runat="server">
<ItemTemplate>
<asp:Label ID="LabelID" runat="server" Text='<%# Eval("id") %>' Visible="false"></asp:Label>
</ItemTemplate>
</asp:Repeater>


But the Label still exists with the correct value if you use FindCOntrol in the Button Click event



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
Label lbl = rptValidacao.Items[i].FindControl("LabelID") as Label;
}


You should also look into DataKeys. But a Repeater cannot use them.






share|improve this answer













You can place a Label in an ItemTemplate and set the Visibility to false.



<asp:Repeater ID="rptValidacao" runat="server">
<ItemTemplate>
<asp:Label ID="LabelID" runat="server" Text='<%# Eval("id") %>' Visible="false"></asp:Label>
</ItemTemplate>
</asp:Repeater>


But the Label still exists with the correct value if you use FindCOntrol in the Button Click event



protected void btnValidarFormulario_Click(object sender, EventArgs e)
{
Label lbl = rptValidacao.Items[i].FindControl("LabelID") as Label;
}


You should also look into DataKeys. But a Repeater cannot use them.







share|improve this answer












share|improve this answer



share|improve this answer










answered Jan 4 at 12:31









VDWWDVDWWD

25.2k123956




25.2k123956













  • Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

    – Jackal
    Jan 4 at 12:38



















  • Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

    – Jackal
    Jan 4 at 12:38

















Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

– Jackal
Jan 4 at 12:38





Yes this sounds like a good idea, i might switch repeaters to listview in future for more options though.

– Jackal
Jan 4 at 12:38













1














A solution is to create a HiddenField and on data bind of the repeater yourHiddenField.Value will be populated to something like:



3,4,7,12



and then on button click split the values in the hidden field. You can do this even on the client-side if the hidden field is populated via Javascript before submission is executed.






share|improve this answer



















  • 1





    I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

    – Jackal
    Jan 4 at 12:38
















1














A solution is to create a HiddenField and on data bind of the repeater yourHiddenField.Value will be populated to something like:



3,4,7,12



and then on button click split the values in the hidden field. You can do this even on the client-side if the hidden field is populated via Javascript before submission is executed.






share|improve this answer



















  • 1





    I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

    – Jackal
    Jan 4 at 12:38














1












1








1







A solution is to create a HiddenField and on data bind of the repeater yourHiddenField.Value will be populated to something like:



3,4,7,12



and then on button click split the values in the hidden field. You can do this even on the client-side if the hidden field is populated via Javascript before submission is executed.






share|improve this answer













A solution is to create a HiddenField and on data bind of the repeater yourHiddenField.Value will be populated to something like:



3,4,7,12



and then on button click split the values in the hidden field. You can do this even on the client-side if the hidden field is populated via Javascript before submission is executed.







share|improve this answer












share|improve this answer



share|improve this answer










answered Jan 4 at 12:28









Lajos ArpadLajos Arpad

28.9k1863121




28.9k1863121








  • 1





    I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

    – Jackal
    Jan 4 at 12:38














  • 1





    I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

    – Jackal
    Jan 4 at 12:38








1




1





I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

– Jackal
Jan 4 at 12:38





I considered this too but I was looking for a different approach than having an invisible item holding the value in the form

– Jackal
Jan 4 at 12:38


















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54038546%2fpassing-an-id-of-a-row-in-repeater-to-submit-button-in-asp-net%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Mossoró

Error while reading .h5 file using the rhdf5 package in R

Pushsharp Apns notification error: 'InvalidToken'