2017-03-06 3 views
0

15 개의 레코드 (15 개의 행)와 5 개의 열이있는 테이블을 볼 수 있지만 중요한 것은 "작업"열입니다. 그것에는 1 개의 버튼, "Preview"가 있습니다. 클릭 할 때, 테스트를 위해 메시지가있는 윈도우를 열고 싶습니다.내 레코드의 각 레코드에 대한 JavaScript

그러나 첫 번째 레코드 만 "보기"단추를 클릭하면 메시지 창을 표시하고 다른 14 개의 레코드는 표시하지 않습니다.

모든 레코드/줄에 메시지를 표시하려면 어떻게합니까?

<table class="table table-bordered table-hover tablesorter"> 
    <thead> 
     <tr> 
      <th class="header text-center" style="width: 100px;"> Ações </th> 
     </tr> 
    </thead> 
    <tbody id="tabela">  
     @foreach (var item in Model) 
     { 
      <tr> 
       <td> 
        @this.Hidden("IdClient").Value(item.Id) 
        <a id="visualizarCliente" class="btn btn-primary btn-xs btn-visualizar" data-toggle="tooltip" title="Visualizar" target="_blank" 
         href="@Url.Action(MVC.Painel.Clientes.Visualizar(item.Id))"> 
         <i class="fa fa-eye"></i> 
        </a> 
       </td> 
      </tr> 
     } 
    </tbody> 
</table> 

<script type="text/javascript"> 
    $(function() { 
     $("#visualizarCliente").click(function() { 
      var idCliente = $("#IdClient").val(); 
      window.alert("Teste"); 
     }) 
    }); 
</script> 

답변

2

문제는 당신이 ID 선택기를 사용하고 반복 할 수 없다는 것입니다 :

아래 코드를 따르십시오. 예를 들어 data-toggle = "tooltip"과 같은 다른 선택기로 전환하십시오.

<script type="text/javascript"> 
    $(function() { 
     $("a[data-toggle='tooltip']").click(function() { 
      window.alert("Teste"); 
     }) 
    }); 
</script> 
0

문제는 항상 UNIQUE 뭔가 사용할 수 ID입니다. 대신 CLASS을 사용해보십시오. 라인 $(this).parent().find("#IdClient").val();이 그것을해야대로 가장 가까운 요소 값의 것이라고 지정 주어진 예에서

$(function() { 
     $(".btn-visualizar").click(function() { 
      var idCliente = $(this).parent().find("#IdClient").val(); 
      window.alert("Teste"); 
     }) 
    }); 

: 귀하의 기능을해야이 하나의 예처럼 뭔가를 간다.

관련 문제