Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

208
Visualizações
How to use conditional JavaScript statement based on model value on a razor view?

I am basically trying to hide the ACCEPT or REJECT buttons inside "buttons" div on my view based on the values of "d_status" which is either "ACCEPTED" or "REJECTED" or "PENDING" and these values are coming from the model, however I am quite to new to asp.net, here is my code:

<tbody>
    @foreach (var Data in Model)
    {
    <script>
    if (@Data.d_status == "ACCEPTED" || @Data.d_status == "REJECTED") {
    document.getElementById("buttons").style.display = 'none';}
    </script>
    <tr>
       <td>@Data.donor_ID</td>
       <td>@Data.donor_Name</td>
       <td>@Data.donor_condition</td>
       <td>@Data.donor_BG</td>
       <td>@Data.donor_date</td>
       <td>@Data.drequest_date</td>
       <td>@Data.d_status</td> //checks status
       <td>
        <div id="buttons"> //hide this div
         <a href="@Url.Action("AcceptDonorRequest","Admin", new {ID = Data.donor_ID })"
       class="btn btn-success btn-lg">ACCEPT</a>
         <a href="@Url.Action("RejectDonorRequest","Admin", new {ID = Data.donor_ID })"
       class="btn btn-danger btn-lg">REJECT</a>
        </div>
       </td>
     </tr>}
 </tbody>

Is there a better approach to this? Or how this can be fixed?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

You can easily do this like this (Simplified the code a bit for readability):

@if (!(Data.d_status == "ACCEPTED" || Data.d_status == "REJECTED")) {
   <div> //hide this div
         <a class="btn btn-success btn-lg">ACCEPT</a>
         <a class="btn btn-danger btn-lg">REJECT</a>
   </div>
}

There is no need for javascript in this case. If the if condition is false everything inside it wont get rendered.

Heres a link to Microsoft Docs for this. Maybe it helps you to understand the Razor syntax more: https://docs.microsoft.com/en-us/aspnet/core/mvc/views/razor?view=aspnetcore-5.0#conditionals-if-else-if-else-and-switch

about 4 years ago · Juan Pablo Isaza Relatório

0

You can do it like below

@if (Data.d_status == "ACCEPTED" || Data.d_status == "REJECTED")
{
    <div>

    </div>
}
else
{
    <div id="buttons">
        //hide this div
        <a href="@Url.Action("AcceptDonorRequest","Admin", new {ID = Data.donor_ID })"
            class="btn btn-success btn-lg">ACCEPT</a>
        <a href="@Url.Action("RejectDonorRequest","Admin", new {ID = Data.donor_ID })"
            class="btn btn-danger btn-lg">REJECT</a>
    </div>

}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda